So I'm hacking away at some software and I decide to run the MySQL command
GRANT ALL PRIVILEGES ON *.* TO 'root'#'%' IDENTIFIED BY 'password';
Then I notice that my Bug tracker uses the same local MySQL server on my development PC.
Well darn ..
Now when I try to use my bug tracker (Mantis), I get an error message.
APPLICATION ERROR #400 Database connection failed. Error received
from database was #1045: Access denied for user 'root'#'localhost'
(using password: NO). Please use the "Back" button in your web
browser to return to the previous page. There you can correct whatever
problems were identified in this error or select another action. You
can also click an option from the menu bar to go directly to a new
section.
Previous non-fatal errors occurred. Page contents follow.
SYSTEM WARNING: 'mysql_connect() [function.mysql-connect]: Access
denied for user 'root'#'localhost' (using password: NO)' in
'C:\xampp\htdocs\mantis\library\adodb\drivers\adodb-mysql.inc.php'
line 365
I checked inside the php file and that line is where the MySQL connection is established
function _connect($argHostname, $argUsername, $argPassword, $argDatabasename)
{
if (!empty($this->port)) $argHostname .= ":".$this->port;
if (ADODB_PHPVER >= 0x4300)
$this->_connectionID = mysql_connect($argHostname,$argUsername,$argPassword,
$this->forceNewConnect,$this->clientFlags);
else if (ADODB_PHPVER >= 0x4200)
$this->_connectionID = mysql_connect($argHostname,$argUsername,$argPassword,
$this->forceNewConnect);
else
$this->_connectionID = mysql_connect($argHostname,$argUsername,$argPassword);
if ($this->_connectionID === false) return false;
if ($argDatabasename) return $this->SelectDB($argDatabasename);
return true;
}
Using MySQL Workbench I can see that
SHOW GRANTS;
That first row seems to be the culprit, ... I think ...
Is there a way to revert this?
Thanks :)
I've managed to get mantis working again by
SET PASSWORD FOR root#localhost=PASSWORD('');
As recommended here
Related
I'm trying to create a connection to my MySQL database through MySQLi by using the following code:
$con = mysqli_connect( "localhost", "wesley", "", "project_tim" );
Now, my error (well, warning) is the following:
Warning: mysqli::mysqli(): (HY000/1044): Access denied for user ''#'localhost' to database 'project_tim'
As you can see, there is no user in the error line. What can the problem be? I have the latest version of Xampp, the user is created and both services are running.
Finally the problem is wesley user don't have the permission to access the database.
To provide permission for wesley user, run this command in your MYSQL console or in phpMyAdmin
GRANT ALL ON project_tim.* TO 'wesley'#'localhost';
And restart your xampp
I work on a personal website. I just put it on the production server. When I am in the development environment I connect to MySQL with root but now I just created a user specific for this website. So I wrote this command line in MySQL:
GRANT USAGE ON portefolio.* TO 'userPortefolio'#'localhost' IDENTIFIED BY PASSWORD 'myPasswordCrypted'
The query is ok, but on my website, when I try to access a page with a query, Symfony gives me that error:
SQLSTATE[42000] [1044] Access denied for user 'userPortefolio'#'localhost' to database 'portefolio'
I tried to restart the server to be sure everything is ok but nothing.
I encrypted the password with the MySQL function
password('my password not encrypt')
and in Symfony I wrote the password in non-encrypted format. Is that ok?
GRANT USAGE ON portefolio.* TO 'userPortefolio'#'localhost' IDENTIFIED BY PASSWORD 'myPasswordCrypted'
Your password should not be encrypted in this statement. MySQL crypts it automatically.
Assuming no quirks in connecting etc were made you should do a
flush privileges;
after running the grant query.
quoting from the manual: The USAGE privilege specifier stands for “no privileges.”
so everything seems to be working as designed.
I am using xampp om windows 7. I logged in as the root user with the password i have set up. I created a new database(I am using xampp for the first time). and I am not getting any option for creating any tables in it.
It shows the following error:
Error
SQL query: DocumentationEdit
SELECT `tables`
FROM `phpmyadmin`.`pma_recent`
WHERE `username` = 'root'
MySQL said: Documentation
#1142 - SELECT command denied to user ''#'localhost' for table 'pma_recent'
How do I get rid of this?
I get this line also, somewhere at the bottom of the page along with the error message:
The phpMyAdmin configuration storage is not completely configured, some extended features have been deactivated.
http://dev.mysql.com/doc/refman/5.1/en/grant.html
GRANT SELECT ON db.table TO 'user'#'localhost';
GRANT ALL ON db1.* TO 'jeffrey'#'localhost'; ------------ i think this is much better.
I'm trying to get the examples to work in Agile Toolkit, but I get the database connection failed error. I created a MySQL database, imported the schema.sql file, and updated the config.php file with the correct database name, database username, and password.
Here's the DSN line in config.php (fake username:password substituted)
$config['dsn']='mysql://admin123:pw12345#localhost/ATKexample';
It seems to be pointing to the right place, because the error changes if I put the wrong password into config.php. The first error message below is what I get with the correct password, and the second one below is what I get if I use an incorrect password.
PDO error: SQLSTATE[42000] [1044] Access denied for user
'admin123'#'localhost' to database 'ATKexample'
PDO error: SQLSTATE[28000] [1045] Access denied for user
'admin123'#'localhost' (using password: YES)
I can't figure out what I'm doing wrong. I don't know if it is a problem with the way the MySQL database is setup or if I need to change something in my ATK example files. Can anyone suggest a troubleshooting strategy?
Edit: I didn't have my user privileges setup right in MySQL. Problem solved.
Log into your mysql console and grant permissions for user admin123
grant all on `ATKexample`.* to 'admin123'#'localhost' identified by 'pw12345';
I'm using MySQL given from A2Hosting. There I can create users and add them to databases. And i hosted my php codes inside web folder in symfony php structure. I dont want to use any symfony commands or functions. I have my own php calls to DB. But my Php codes gives the following error. But the user names and passwords are correct.
Query failed : Access denied for user 'games_user'#'localhost' to database 'games'
Granting privileges to user 'games_user' could not be enough. You must grant privileges to 'games_user'#'localhost', specifiying the host, even for localhost.
Granting all privileges for instance should look like this:
GRANT ALL PRIVILEGES ON database.* TO 'games_user'#'localhost' IDENTIFIED BY 'password';
Check permissions for user "games_user" in your "games" database. Access is denied to database "games"