使从服务器成为另一台服务器的主服务器

Ala*_*ari 4 mysql mysql-replication master-slave

我有三台服务器,Server X、Y 和 Z。
我在 X 上有主要的 mysql 数据库(innodb DB)。
现在我已经创建了从 X 到 Y 的主从。这里一切正常。
现在我将 Y 设置为 Z 的主站。
当我在 Z(第三台服务器)上显示从站状态时

显示从属状态\G
Slave_IO_State:等待主机发送事件
...
Slave_IO_Running: 是
Slave_SQL_Running: 是
...
Seconds_Behind_Master: 0

但是数据没有同步,Y 和 Z 之间没有任何移动。知道是什么原因造成的吗? 在服务器 Y 上的 my.cnf 中
编辑
,我有以下配置:

日志从站更新=ON
日志-bin=mysql-bin

但在像“%slave%”这样的显示变量中,我有

显示像“%slave%”这样的变量;
+---------------------------+--------+
| 变量名 | 价值 |
+---------------------------+--------+
| init_slave | |
| log_slave_updates | 关闭 |
| slave_compressed_protocol | 关闭 |
| slave_exec_mode | 严格 |
| slave_load_tmpdir | /tmp |
| slave_net_timeout | 3600 |
| slave_skip_errors | 关闭 |
| slave_transaction_retries | 10 |
| sql_slave_skip_counter | |
+---------------------------+--------+

谢谢你的帮助

qua*_*nta 5

确保您已使用--log-slave-updates选项启动 Y,以便 Y 将从 X 收到的更新记录到其二进制日志中。


在服务器 Y 上的 my.cnf 中,我有以下配置:

log-slave-updates=ON
Run Code Online (Sandbox Code Playgroud)

使用布尔值而不是开关值:

log-slave-updates=true
Run Code Online (Sandbox Code Playgroud)

结果:

mysql> show global variables like '%slave%';
+---------------------------+--------+
| Variable_name             | Value  |
+---------------------------+--------+
| init_slave                |        |
| log_slave_updates         | ON     |
| slave_compressed_protocol | OFF    |
| slave_exec_mode           | STRICT |
| slave_load_tmpdir         | /tmp   |
| slave_net_timeout         | 3600   |
| slave_skip_errors         | OFF    |
| slave_transaction_retries | 10     |
| sql_slave_skip_counter    |        |
+---------------------------+--------+
9 rows in set (0.00 sec)
Run Code Online (Sandbox Code Playgroud)