所以我设置了复制,它将从主服务器复制包括MySQL在内的所有数据库。
我在master上创建了一个没有密码帐户的新user@localhost
,它立即反映了复制。两者都是5.7并绑定到他们自己的IP并具有skip-name-resolve
当我尝试从master访问该帐户时,它表示拒绝访问。如果我从奴隶服务器尝试该帐户,它可以工作。
我甚至尝试将其更改为'user'@'%'
,但它仍然仅适用于奴隶。不是从主人那里工作的。我希望该帐户可以从主服务器和从服务器工作。该帐户仅授予USAGE
。
EDIT:
如果我设置了密码,那么它在两个服务器上都可以作为user@localhost
。没有密码它只适用于从服务器(现在在master上创建2个测试帐户)。那是为什么?
更新:
我创建这样的用户,我可以从主服务器登录,但我必须按返回键。
`create user `user@localhost` identified by '';`
master_server@root: mysql -uuser -p
<-- Enter key, logins fine.
slave_server@root: mysql -uuser
logins without the need of -p switch.
更新
嗯,在主目录中有一个my.cnf,删除它并且工作正常。答案 0 :(得分:0)
解决:
如果主目录中存在任何隐藏的.my.cnf,其他用户名和密码将导致此类问题。
删除用户主目录中的任何.my.cnf。
ls -a ~/