Mysql 复制 mysql(全部)数据库 - 奇怪的问题

标签 mysql

所以我设置了复制,它将从主服务器复制所有数据库,包括 MySQL。

我在主服务器上创建了一个新的user@localhost,没有密码帐户,它立即反射(reflect)在复制上。两者都是5.7并且绑定(bind)到自己的ip并且有skip-name-resolve

当我尝试从 master 访问该帐户时,它说访问被拒绝。如果我从从属服务器尝试该帐户,它就可以工作。

我什至尝试将其更改为'user'@'%',但它仍然只能在从属设备上工作。从主人那里不起作用。我希望该帐户可以在主服务器和从服务器上使用。该帐户仅具有用于 USAGE 的赠款。

编辑:

如果我设置密码,那么它可以在两台服务器上以 user@localhost 的身份运行。没有密码,它只能在从服务器上工作(现在在主服务器上创建了 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,删除它就可以了。

最佳答案

已解决:

如果主目录中存在任何隐藏的.my.cnf,并且使用其他用户名和密码,则会导致此类问题。

删除用户主目录中的任何 .my.cnf。

     ls -a ~/

关于Mysql 复制 mysql(全部)数据库 - 奇怪的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39737907/

相关文章:

MySQL简单行数增量计数器

php - 从第一个表中选择所有内容,计算第二个表中 ID 的实例数

java - Struts2登录MySQL错误

mysql - 在 MySql 中保存日期值

mysql - Sql 将两个文本列合并为单列

php - 将值分配给php中的对象

php - CSV 上传后自动构建 mySql 表

mysql - 如何让mysql允许相同的表名,只是Windows中的字母大小写不同

php - 分离从 mysqli_fetch_array 返回的两个数组

PHP/MySQL : Update int where id = column?