ERROR 1044(42000):拒绝用户'root'@'localhost'访问数据库'newdb'

时间:2017-01-14 15:39:28

标签: mysql macos terminal

现在,我可以使用mysql -uroot -p登录mysql,然后输入我的密码。

然后我尝试这样做。

mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | +--------------------+

但是当我创建数据库时,我收到一个错误:

mysql> CREATE DATABASE newdb; ERROR 1044 (42000): Access denied for user 'root'@'localhost' to database 'newdb'

这是我的补助金:

mysql> show grants; +------------------------------------------+ | Grants for root@localhost | +------------------------------------------+ | GRANT USAGE ON *.* TO 'root'@'localhost' | +------------------------------------------+

使用MacOSX在终端上

。谢谢你的帮助。

1 个答案:

答案 0 :(得分:0)

来自the docsGRANT USAGE是:

  

“no privileges”的同义词

除了这个特权名称令人困惑之外,我不确定你是如何/为什么拥有root这样有限的权限呢。

你想要root的是GRANT ALL。更好的是,保持root原样并创建一个具有仅本地访问权限的不同超级用户来替换root。但请注意,一般情况下,您希望仅为用户提供他们需要做的任何必要的最低权限。