2017-04-26 157 views
0

我可以无任何问题连接到我的数据库,我使用包含授予选项的*.*上的所有权限设置了具有密码的用户。尝试授予权限时数据库上的用户拒绝访问

当我执行以下命令:

SHOW GRANTS FOR 'myuser'@'myip'; 

我得到:

GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'myip' WITH GRANT OPTION 

然而,当我尝试以下方法:

CREATE SCHEMA test; 
GRANT ALL ON test.* to 'testacc' identified by 'asdfasdf'; 

我得到Access denied for user 'myuser'@'myip' to database 'test',架构test但是可以被成功创建。

唯一可行的是在我的服务器上直接作为root(如localhost)。

我已经尝试删除该帐户,授予/取消特权和冲洗它们。似乎没有任何工作,我不知道为什么。

运行于:

  • 的MySQL版本14.14 DISTRIB 5.7.17,对于Linux下(x86_64)使用EditLine包装

    • 的Ubuntu LTS 16.04
  • 回答

    0

    想通了..

    SELECT USER(); & SELECT CURRENT_USER();不一样。

    看来我试图通过不同于我实际认证的IP登录。例如,我试图登录为ip1283.some-random-url.com,但我被认证为x.x.x.x(或者相反,我不记得了,一切都变得如此之快:P)。

    我添加了第一个IP(奇怪的)并删除了另一个,建立了一个新的数据库连接,并且一切正常。很奇怪。

    如果有人能解释为什么,那会很棒!

    +0

    也许你有动态IP,或使用代理? –

    +0

    @MichaelO。我的IP多年来一直如此,我还没有在家设置过任何代理,也没有其他人也没有。这太奇怪了。 –

    相关问题