我有一台 redhat linux 服务器,root 密码为 A
设置 MySQL 时,我给了它一个密码 B(不是 A)
我需要以用户“myusername”的身份连接到“mydatabase”
列出用户显示:
mysql> select user();
+----------------+
| user() |
+----------------+
| root@localhost |
+----------------+
1 row in set (0.00 sec)
mysql> select * from mysql.user;
...
| localhost | root | qqqqqqqqqqqqqqq1 |
| localhost | myusername | qqqqqqqqqqqqqqq2 |
...
但我似乎无法从命令行连接它:
# mysql --database=mydatabase --user=myusername --host=localhost --password=qqqqqqqqqqqqqqq2
ERROR 1044 (42000): Access denied for user 'myusername'@'localhost' to database 'mydatabase'
答案1
你是否已同意我的用户名权限我的数据库?
执行该操作的命令是GRANT ALL ON mydatabase.* TO 'myusername'@'localhost';
(执行该操作时以 root 身份登录 MySQL)。
然后刷新权限以FLUSH PRIVILEGES;
使其生效。