我的问题是:
我创建了一个新用户:GRANT ALL PRIVILAGES ON sampdb.* TO 'monty'@'' IDENTIFIED BY 'pass'
该用户出现在两个数据库中:mysql.user(完全没有权限)和 mysql.db(除了 GRANT 之外几乎所有权限)。好的。
之后我尝试通过这个新用户访问 sampdb 数据库:mysql -u monty -ppass sampdb
。 MySQL 回答:“拒绝用户'monty'@'localhost(使用密码:YES)'的访问。
请告诉我,我哪里弄错了?
最佳答案
我认为您需要将权限授予 'monty'@'localhost'
,而不是 'monty'@''
。目前,您正在尝试通过本地主机连接,但 'monty'@'localhost'
不存在。
编辑:或 'monty'@'%'
,以允许来自任何主机的连接。
关于MySQL:创建新用户/尝试访问数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3807472/