程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> MySQL Slave數據重新復制一例

MySQL Slave數據重新復制一例

編輯:MySQL綜合教程


MySQL Slave數據重新復制一例   剛才收到某台slave同步出錯的預警短信,是該slave的SQL THREAD停止了,狀態如下: 01 mysql> show slave status \G 02   03 ... 04   05              Slave_IO_Running: Yes 06             Slave_SQL_Running: No 07    www.2cto.com   08 ... 09   10                     Last_Errno: 1050 11                    Last_Error: Error 'Table 'TEMP_T3' already exists' on query. Default database: 'xxxx'. Query: 'CREATE TABLE TEMP_T3(ID VARCHAR(30))' 12                  Skip_Counter: 0 13           Exec_Master_Log_Pos: 55306964 14 ... 從以上信息得知,是我在Master上建立某臨時數據處理表在Slave上已經存在了。造成這個原因很巧合:平時我制作的數據處理表都是放在slave上,這雖然會造成M/S數據不一致(影響的是非在線生產數據),但可以分擔一部分Master的處理壓力,而今天由於此Master所承擔的業務已經下線,所以就直接在Master上進行了數據處理造成了此錯誤現象。   解決方法過程如下: 1.停止slave 1 mysql> stop slave; 2.刪除slave上的沖突表   www.2cto.com   1 mysql> drop table TEMP_T3; 3.更改log position 1 mysql> change master to MASTER_HOST = '...', 2                         MASTER_USER='...', 3                         MASTER_PASSWORD='...', 4                         MASTER_PORT=..., 5                         MASTER_LOG_FILE='...', 6                         MASTER_LOG_POS=55306964; 'MASTER_LOG_POS'值為'Exec_Master_Log_Pos'的值   4.開啟slave線程   www.2cto.com   1 mysql> start slave; 5.檢查狀態 1 ... 2   3            Slave_IO_Running: Yes 4             Slave_SQL_Running: Yes 5
  6 ...     作者 旺仔的鑰匙

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved