国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數(shù)據(jù)庫 > MySQL > 正文

MySQL Replication 遇到 Got fatal error 1236 from master 修復(fù)

2024-07-24 12:37:38
字體:
供稿:網(wǎng)友

MySQL Replication 遇到 error 1236 就有點(diǎn)麻煩了,通常都是 binlog 出問題造成的,Master 或 Slave 的 binlog 壞掉都有可能造成此錯誤.

通常遇到這個狀況,都是 Slave 的 binlog 壞掉,就 Slave DB 的資料重倒來解決,但是此次遇到是 Master 的 binlog 壞掉,就有點(diǎn)苦了.

錯誤訊息如下:

  1. ■Last_IO_Errno: 1236 
  2. ■Last_IO_Error: Got fatal error 1236 from master when reading data from binary log: 'Client requested master to start replication from impossible position; the first event 'mysql-bin.003583' at 45997491, the last event read from './mysql-bin.003583' at 4, the last byte read from './mysql-bin.003583' at 4.' 

MySQL Replication 遇到 Got fatal error 1236 from master 修復(fù):

mysql> SHOW SLAVE STATUSG

錯誤訊息如下:已經(jīng)把不必要得刪除.

  1. Master_Log_File: mysql-bin.003583 
  2. Read_Master_Log_Pos: 45997491 
  3. Relay_Log_File: mysqld-relay-bin.006789 
  4. Relay_Log_Pos: 103569723 
  5. Relay_Master_Log_File: mysql-bin.003361 
  6. Slave_IO_Running: No 
  7. Slave_SQL_Running: Yes 
  8. Last_Errno: 0 
  9. Skip_Counter: 0  --Vevb.com 
  10. 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; the first event 'mysql-bin.003583' at 45997491, the last event read from './mysql-bin.003583' at 4, the last byte read from './mysql-bin.003583' at 4.' 

?: Debian / Ubuntu Linux 預(yù)設(shè) MySQL data path: /var/lib/mysql,所以下述 binlog 可於此路徑尋找.

Slave binlog 壞掉的解法

1.一般常見是 Slave binlog 壞掉,所以都會先去 Slave 找 mysql-bin.003583 檔案.

2.再把 mysql-bin.003583 的資料用 mysqlbinlog dump 出來,指到下一個 position 即可.

3.Slave: ls /var/lib/mysql/mysql-bin.003583 # not found.

4.Slave 不存在檔案,才發(fā)現(xiàn)到壞的是 Master.

Master binlog 壞掉的解法

■Master: # mysqlbinlog /var/lib/mysql/mysql-bin.003583 > ~/3583

ERROR: Error in Log_event::read_log_event(): 'read error', data_len: 27, event_type: 16

■最苦的狀況是 Master 的 binlog 壞掉了,所以所有 Slave 都死光光,XD

此時可以考慮幾種作法:

1.全部 Slave 重倒 (最保險, no data lost)

2.先讓 Replication 可以啟動, 再來 重倒 / sync 一定需要同步的資料即可. (Cache ... 那種就可以不用理他).

解決實例代碼如下:

  1. mysql> STOP SLAVE; 
  2. mysql> CHANGE MASTER TO master_log_file = 'mysql-bin.003584', master_log_pos = 0; # 先指到下一個 binlog 檔, pos 指 0 或 4, 都是一樣意思. 
  3. mysql> START SLAVE; 
  4. mysql> SHOW SLAVE STATUS G # 於此應(yīng)該就恢復(fù)了. 

然后在對重要的 Table 用 pt-table-sync 來補(bǔ)一補(bǔ)即可,apt-get install percona-toolkit.

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 滕州市| 汉川市| 光山县| 沁水县| 广昌县| 连江县| 海城市| 临洮县| 德清县| 德保县| 东山县| 吉安市| 岳普湖县| 浏阳市| 德清县| 汝阳县| 垦利县| 柳州市| 井研县| 临沭县| 哈巴河县| 平山县| 达日县| 河南省| 崇州市| 新河县| 闸北区| 望江县| 衡东县| 华坪县| 五家渠市| 玉门市| 夏河县| 囊谦县| 河池市| 饶河县| 凭祥市| 松潘县| 庆城县| 梁河县| 福海县|