aploy-log ---> mv..."/>
溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

配置ECS上自建MySQL作為RDS從庫過程中踩到的坑

發(fā)布時間:2020-06-27 15:09:07 來源:網(wǎng)絡 閱讀:8657 作者:我的二狗呢 欄目:MySQL數(shù)據(jù)庫

環(huán)境:

  RDS版本:阿里云的5.6

  ECS自建MySQL5.6.34(官方版本)


通過將阿里云rds的自動全量備份下載到ECS上,按照官方的步驟解壓--> aploy-log ---> mv 到mysql的datadir 并啟動mysql。


然后執(zhí)行

reset slave all;

reset master;


change master to master_host='rm-xxxxxxxxx.mysql.rds.aliyuncs.com',

master_user='rpl', 

master_password='123456' , 

MASTER_PORT=3306, 

MASTER_AUTO_POSITION=1; 

這里就報錯了。錯誤日志提示:

2017-06-05 16:35:19 16759 [ERROR] Error reading relay log configuration.

2017-06-05 16:37:00 16759 [ERROR] Error reading master configuration.



原因:

 阿里云的RDS是做個修改的版本,和官方部分表結(jié)構(gòu)的不一樣。(目前發(fā)現(xiàn)的有mysql庫下面的slave_master_info、slave_relay_log_info、slave_worker_info,其他的表還沒仔細關(guān)注)

RDS恢復出來的這3張表里面,比官方的版本多了個Channel_name字段。導致我們change master失敗。

下圖是我在編譯的alisql上面查看的表結(jié)構(gòu):

配置ECS上自建MySQL作為RDS從庫過程中踩到的坑



解決方法:

use mysql;

drop table slave_master_info;

drop table slave_relay_log_info;

drop table slave_worker_info;

然后參照其他MySQL5.6的機器,重新建這3張表。


完成后,再按照常規(guī)的GTID復制的從庫搭建步驟操作:

change master to master_host='rm-xxxxxxxxxxx.mysql.rds.aliyuncs.com',

master_user='rpl', 

master_password='rpl' , 

MASTER_PORT=3306, 

MASTER_AUTO_POSITION=1; 


SET GLOBAL gtid_purged='b9f0343a-3ac4-11e7-9769-008cfaf59624:1-6751, d50b0441-3ac4-11e7-976a-7cd30ac47780:1-106693';


start salve;

這樣就可以自動開始同步數(shù)據(jù)了。



(如果用編譯安裝的alisql則不需要這幾步驟,因為阿里云開源出來的ALiSQL和RDS都有Channel_name字段)


向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI