我正在尝试运行 pt-table-sync 以重新同步 MYSQL 主从复制。我有两个运行 Debian 5 的 VPS 系统,并且复制运行没有任何问题。
我遇到的问题是,当我在 MASTER 服务器上运行 pt-table-sync 时,它一直无法连接到 SLAVE 服务器。我正在运行以下命令:
pt-table-sync --dry-run --sync-to-master h='ip of slave server',u='user',p='password'
返回:
Host 'my网站地址'不允许连接到此 MySQL 服务器...
但是,如果我尝试从主服务器远程连接到从属 mysql 服务器:
mysql -h 'ip of slave server' -u 'user' -p'password'
然后我没有任何问题,并且可以正常访问数据库。
在我的从服务器上,我尝试调整 MASTER 在连接到它时使用的 mysql 用户帐户,调整主机,甚至暂时将它们设置为“任何”以查看它是否可以工作。
我还发现奇怪的是,根据我发出的确切 pt-table-sync 命令,机器的主机名似乎发生了变化。例如:
pt-table-sync --dry-run --sync-to-master h='从服务器的ip',u='user',p='password'
--> Host '我的网址'不允许连接到这个 MySQL 服务器...
pt-table-sync --dry-run --sync-to-master '从服务器的 ip'
--> 用户'root'@''我的 VPS 名称'' 的访问被拒绝(使用密码:否)
我不确定为什么它根据两个命令提供不同的“主机”名称?当我可以远程直接连接到 mysql 时,任何想法为什么会失败?