我已经创建了一个 mysql 主从配置,一切看起来都很好。“显示主人状态;” 从站上没有显示任何错误。这是输出
Slave_IO_State: Waiting for master to send event
Master_Host: 109.123.100.58
Master_User: replica
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: mysql-bin.000001
Read_Master_Log_Pos: 106
Relay_Log_File: relay-bin.000001
Relay_Log_Pos: 4
Relay_Master_Log_File: mysql-bin.000001
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
Replicate_Do_DB:
Replicate_Ignore_DB:
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
Last_Errno: 0
Last_Error:
Skip_Counter: 0
Exec_Master_Log_Pos: 106
Relay_Log_Space: 106
Until_Condition: None
Until_Log_File:
Until_Log_Pos: 0
Master_SSL_Allowed: No
Master_SSL_CA_File:
Master_SSL_CA_Path:
Master_SSL_Cert:
Master_SSL_Cipher:
Master_SSL_Key:
Seconds_Behind_Master: 0
Master_SSL_Verify_Server_Cert: No
Last_IO_Errno: 0
Last_IO_Error:
Last_SQL_Errno: 0
Last_SQL_Error:
Run Code Online (Sandbox Code Playgroud)
然而,当主服务器发生变化时,从服务器上的复制似乎没有发生
在主人上。显示主状态
+------------------+----------+--------------+-------------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+-------------------------+
| mysql-bin.000001 | 639495 | | mysql,informationschema |
+------------------+----------+--------------+-------------------------+
Run Code Online (Sandbox Code Playgroud)
在奴隶 SHOW PROCESSLIST 产量
+-----+-------------+-----------+------+---------+-------+-----------------------------------------------------------------------+------------------+
| Id | User | Host | db | Command | Time | State | Info |
+-----+-------------+-----------+------+---------+-------+-----------------------------------------------------------------------+------------------+
| 174 | system user | | NULL | Connect | 25777 | Waiting for master to send event | NULL |
| 175 | system user | | NULL | Connect | 25777 | Has read all relay log; waiting for the slave I/O thread to update it | NULL |
| 199 | root | localhost | NULL | Query | 0 | NULL | show processlist |
+-----+-------------+-----------+------+---------+-------+-----------------------------------------------------------------------+------------------+
3 rows in set (0.00 sec)
Run Code Online (Sandbox Code Playgroud)
我是不是错过了什么
您提供的输出非常令人困惑。一方面,大师展示:
mysql-bin.000001 639495
Run Code Online (Sandbox Code Playgroud)
slave的PROCESSLIST
表示replication工作(IO线程连接到master,SQL线程在等待)。
奴隶SHOW SLAVE STATUS
再次声称一切都很好,但主人的立场是106
。
所有这些输出是大致同时发布的吗?如果没有,那么它们就没有价值。
我会检查以下内容:
109.123.100.58
真的是你的主人吗?SHOW PROCESSLIST
主站上是否列出了replica
用户下从站建立的连接?server-id
的主从设置吗?replicate-do-*
或者replicate-ignore-*
在你的设置mysql.cnf
文件?Chr*_*ris -2
您没有告诉从站要复制哪个数据库:变量 Replicate_Do_DB 为空。
尝试添加行
replicate-do-db=name_of_db(其中“name_of_db”是要复制的数据库的名称)
在你的 my.cnf (在从服务器上)并重新启动从服务器。
编辑:同时,我认为我的答案不是正确的解决方案;-)
也许看看这个页面: http: //dev.mysql.com/doc/refman/5.1/en/replication-problems.html
归档时间: |
|
查看次数: |
35140 次 |
最近记录: |