mysql主從復制問題之主從兩端binlog日志不同步解決方案


主操作:

  1. 進入主的數據庫查看狀態:

mysql> show master statusG;

*************************** 1. row ***************************

File: mysql-bin.000001

Position: 604

Binlog_Do_DB:

Binlog_Ignore_DB:

1 row in set (0.01 sec)

 

從操作:

  1. 進入從的數據庫查看狀態:

mysql> show slave statusG;

*************************** 1. row ***************************

Slave_IO_State:

Master_Host: 192.168.1.187

Master_User: slave001

Master_Port: 3306

Connect_Retry: 60

Master_Log_File: mysql-bin.000001

Read_Master_Log_Pos: 800

Relay_Log_File: mysqld-relay-bin.000001

Relay_Log_Pos: 4

Relay_Master_Log_File: mysql-bin.000001

Slave_IO_Running: No

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: 800

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: NULL

Master_SSL_Verify_Server_Cert: No

Last_IO_Errno: 1236

Last_IO_Error: Got fatal error 1236 from master when reading data from binary log: 'Client requested master to start replication from impossible position'

Last_SQL_Errno: 0

Last_SQL_Error:

1 row in set (0.00 sec)

會發現從狀態與主狀態不一樣(主要觀察Master_Log_File和Read_Master_Log_Pos),就是binlog日志不同步

  1. 現在需要使主從的數據先同步,然后再使binlog日志同步方能解決問題

(1).把主數據庫停止更新,查看binlog(file和positon),打包放到從服務器上恢復

(2).停止從的slave,修改binlog(依據查看主的file和position),然后啟動slave,最后把主的鎖解除

具體操作已在《mysql主從同步配置》中做詳細說明,可前往查看


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM