Mysql

MySQL主從配置-error 1236

  • November 18, 2016

我目前有一個 Master (5.5) - Slave (5.6) 設置,我想添加另一個從現有從站複製的從站。

在現有的奴隸上:

1. STOP SLAVE;
2. SHOW SLAVE STATUS;
3. Note these values Master_Log_File: mysql-bin.018098 & Read_Master_Log_Pos: 185753950
4. FLUSH TABLES WITH READ LOCK;
5. Service mysql stop
4. Took snapshot of mysql data vol and restore it on new mysql slave server, also I changed the server-id in my.cnf on the new mysql slave.
5. service mysql start.
6. UNLOCK TABLES;

在新的 mysql 從伺服器上(應該從現有的從伺服器複製):

1. changed server-id on my.cnf
2. remove /mnt/data/mysql/auto.cnf
3. service mysql start --skip-slave-start

4.
CHANGE MASTER TO MASTER_HOST='existing slave',
MASTER_USER='xxx',
MASTER_PASSWORD='xxx',
MASTER_LOG_FILE='mysql-bin.018098',
MASTER_LOG_POS=185753950;

5. execute start slave

got an error:
2016-11-18 16:39:50 5736 [ERROR] Error reading packet from server: Could not find first log file name in binary log index file (server_errno=1236)
2016-11-18 16:39:50 5736 [ERROR] Slave I/O: Got fatal error 1236 from master when reading data from binary log: 'Could not find first log file name in binary log index file', Error_code: 1236
2016-11-18 16:39:50 5736 [Note] Slave I/O thread exiting, read up to log 'mysql-bin.018098', position 185753950

謝謝 !!

如果要從現有的 5.6 從站複製到另一個 5.6 從站,則需要將第一個 5.6 從站設置為像主站一樣

步驟 01

將這三 (3) 行添加到[mysqld]第一個 5.6 從站上的 my.cnf(在組標題下)

[mysqld]
log-bin=mysql-bin
log-slave-updates
skip-slave-start

步驟 02

在第一個 5.6 從站上重啟 mysql

service mysql restart

現在,第一個 5.6 從站有自己的二進制日誌

步驟 03

在第一個 5.6 從站上重置二進制日誌

mysql> RESET MASTER;

步驟 04

在第二個 5.6 從站上,設置複製到第一個 5.6 從站,如下所示:

STOP SLAVE;
CHANGE MASTER TO MASTER_HOST='existing slave',
MASTER_USER='xxx',
MASTER_PASSWORD='xxx',
MASTER_LOG_FILE='mysql-bin.000001',
MASTER_LOG_POS=4;
START SLAVE;

第 5 步

在第一個 5.6 從屬設備上開始複製

mysql> START SLAVE;

第 6 步

驗證複製是否在兩個 5.6 從站上執行

mysql> SHOW SLAVE STATUS\G

如果你看到Slave_IO_Running: Yes, Slave_SQL_Running: Yes, 和Seconds_Behind_Master是一個數字(最好是 0),恭喜!

試一試 !!!

引用自:https://dba.stackexchange.com/questions/155718