我试图通过以下方式从python程序访问数据库:
db = mysql.connect(host = 'localhost', user = 'Max', passwd = 'maxkim', db = 'TESTDB')
cursor = db.cursor()但是,我在第一行代码中得到了一个错误消息。
OperationalError: (1045, "Access denied for user 'Max'@'localhost' (using password: YES)")为了纠正这种情况,我做了以下工作:
$ mysql -u Max-p
Enter password: maxkim
mysql> create database TESTDB;
mysql> grant usage on *.* to Max@localhost identified by ‘maxkim’;
mysql> grant all privileges on TESTDB.* to Max@localhost ;
mysql> exit如果我已经为用户"Max“(我)授予了对数据库的所有访问权限,为什么我不能在python中连接呢?
发布于 2013-07-02 12:28:16
您可以尝试在末尾添加GRANT选项:
GRANT all privileges on TESTDB.* to 'Max'@'localhost' IDENTIFIED BY 'maxkim' WITH GRANT OPTION;还可以使用以下命令为用户查找授权:
SHOW GRANTS FOR 'Max'@'localhost';也见
发布于 2013-07-02 12:56:59
我建议每个人始终使用mysql_setpermission而不是直接的MySQL语句,mysql_setpermission为您做了一切,包括FLUSHing。任何其他方式都容易出错。
https://stackoverflow.com/questions/17425523
复制相似问题