今早mysql同步失敗,主數據庫有530W而從數據庫只有去350W,幸好是作備份要否則這個就是個事故了.
問題以下:
Last_Error: Relay log read failure: Could not parse relay log event entry. The possible reasons are: the master's binary log is corrupted (you can check this by running 'mysqlbinlog' on the binary log), the slave's relay log is corrupted (you can check this by running 'mysqlbinlog' on the relay log), a network problem, or a bug in the master's or slave's MySQL code. If you want to check the master's binary log or slave's relay log, you will be able to know their names by issuing 'SHOW SLAVE STATUS' on this slave.mysql
解決方法以下:sql
mysql> CHANGE MASTER TO -> MASTER_HOST='master_host_name', -> MASTER_USER='replication_user_name', -> MASTER_PASSWORD='replication_password', -> MASTER_LOG_FILE='recorded_log_file_name',
而後出現了,新的錯誤.數據庫
Slave_IO_Running: No Slave_SQL_Running: Yes Last_IO_Error: Got fatal error 1236 from master when reading data from binary log: 'Client requested master to start replication from position > file size'**
mysql> stop slave; mysql> change master to master_log_file='mysql-bin.000011',master_log_pos=203; mysql> start slave; # 查看狀態 show slave status\G
Slave_IO_State: Waiting for master to send event Master_Host: 121.196.207.230 Master_User: root Master_Port: 3306 Connect_Retry: 60 Master_Log_File: mysql-bin.000037 Read_Master_Log_Pos: 12367642 Relay_Log_File: DESKTOP-9EVDGPS-relay-bin.000002 Relay_Log_Pos: 127713 Relay_Master_Log_File: mysql-bin.000037 Slave_IO_Running: Yes Slave_SQL_Running: Yes
成功了,可是問題是,目前不清楚這個方案會不致使數據同步出錯,我須要之後檢驗一下.ui