显示从属状态在控制台和客户端均不起作用

显示从属状态在控制台和客户端均不起作用

我有一个有点奇怪的情况。

每当我的一个同事执行这行代码时:

显示从属状态;

从他们的 MySQL 客户端,它运行顺利。但如果我这样做,它会说:

错误 1227 (42000):访问被拒绝;您需要 SUPER,REPLICATION CLIENT 权限才能执行此操作

我们都针对同一个数据库,如果我检查权限,我可以看到:

授予所有权限。至'usermysql'@'%',由密码'password'标识

我的电脑出了问题...但我无法确定问题出在哪里...

谢谢


编辑:

这有点奇怪……它远程通过 VPN。但如果我更改互联网连接,它就会起作用……如果恢复之前的互联网连接,它就不会起作用……

我们能把这归类为世界之谜吗?或者有人有想法吗?

答案1

GRANT RELOAD, PROCESS, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'user'@'%'

复制客户端

答案2

MySQL 区分本地主机和“其他”系统。

GRANT ALL PRIVILEGES ON . TO 'usermysql'@'%' IDENTIFIED BY PASSWORD 'password'

授予“其他”访问权限。要授予数据库正在运行的系统访问权限,您还需要授予 localhost 权限:

GRANT ALL PRIVILEGES ON . TO 'usermysql'@'localhost' IDENTIFIED BY PASSWORD 'password'

答案3

您可以通过向用户授予 SUPER 权限来解决此问题。

SUPER 只能全局分配,全局权限在 mysql.user 中

要确定为什么这对您的同事不起作用,您需要比较您的用户和他们的用户的授权。

mysql > use mysql;

mysql >select User,Host,Super_priv,Repl_client_priv from user;

看看你和你的同事之间是否存在差异。

相关内容