日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

基于阿里云RDS创建ECS自建从库

發布時間:2024/9/21 编程问答 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 基于阿里云RDS创建ECS自建从库 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

使用阿里云ECS自建RDS MySQL從庫

友情提示:安裝MySQL軟件步驟本文暫不介紹,安裝完MySQL無需著急初始化數據庫和啟動服務。只需確保安裝的MySQL版本不低于阿里云RDS MySQL版本,同時提前新建運行MySQL服務的mysql系統用戶。出于安全,部分內容已打馬賽克。采用何種模式做主從由RDS MySQL版本決定。本文主要使用RDS MySQL 5.6版作為樣例說明,使用新的GTID模式做主從。5.5版配置主從更加簡單,前15步操作一樣,沒有16、17步操作,18步使用binlog文件和位置的傳統模式做主從,修改對應SQL語句即可,這里就不多加說明了。

1.阿里云使用了開源的Percona Xtrabackup工具對RDS MySQL做全量物理備份。使用阿里云ECS自建從庫仍然需要使用該工具導入全量備份數據。為了解決安裝時遇到的包依賴問題,推薦使用yum安裝Percona Xtrabackup。

yum?-y?install?http://www.percona.com/downloads/percona-release/redhat/0.1-3/percona-release-0.1-3.noarch.rpm yum?-y?install?percona-xtrabackup


2.登錄阿里云管理控制臺,點擊左側邊欄的云數據庫RDS版,點擊管理。


3.點選備份恢復,而后點擊下載。?


4.點擊復制內網地址。若打算作為從庫的ECS主機和RDS不在同一個區域則點擊復制外網地址。?


5.登錄ECS下載備份,備份地址URL含有特殊關鍵字符,直接使用wget工具下載報403錯誤,需要使用英文單引號括起來。若備份較大可以使用screen工具后臺運行下載任務。

wget?-c?'備份地址URL'?-O?full.tar.gz


6.下載阿里備份專屬解壓腳本。

wget?'http://oss.aliyuncs.com/aliyunecs/rds_backup_extract.sh?spm=5176.775973700.0.0.n9b8wj&file=rds_backup_extract.sh'?-O?rds_backup_extract.sh


7.解壓備份至指定目錄。

bash?rds_backup_extract.sh?-f?full.tar.gz?-C?目錄


8.應用日志,目錄為第7步指定目錄,當運行結果最后一行顯示completed OK!,則表明操作成功。

innobackupex?--apply-log?目錄


9.將解壓文件backup-my.cnf所有內容添加至對應MySQL配置文件my.cnf中,若配置沖突,使用backup-my.cnf內容替換my.cnf同名參數值。目錄為第7步指定目錄。

cat?目錄/backup-my.cnf


10.拷貝或移動完成應用日志操作的已解壓備份至MySQL數據目錄,需my.cnf添加datadir參數指定,--copy-back參數為拷貝,--move-back參數為移動。目錄為第7步指定目錄,若第7部指定的目錄即為MySQL數據目錄,則無需此步操作。

innobackupex?--defaults-file=/etc/my.cnf?--move-back?目錄


11.修改MySQL數據目錄權限并啟動MySQL。

chown?-R?mysql:mysql?數據目錄 /etc/init.d/mysqld?start


12.登錄阿里云管理控制臺,點擊賬號管理,而后點擊頁面中的創建賬號。?


13.按照提示填寫相關內容,復制賬號只需只讀權限即可,填寫完后,點擊確定按鈕。


14.點擊數據安全性,選擇修改。?


15.添加ECS從機的IP地址至組內白名單,IP地址使用英文逗號分隔。?


16.登錄MySQL終端,清理復制關系表數據。

TRUNCATE?TABLE?mysql.slave_relay_log_info; TRUNCATE?TABLE?mysql.slave_master_info;


17.從庫配置文件my.cnf添加以下內容或者替換已有參數后重啟。/etc/init.d/mysqld restart重啟服務開啟GTID模式。

master-info-repository=file relay-log-info_repository=file binlog-format=ROW gtid-mode=on enforce-gtid-consistency=true


18.讀取第7步指定目錄下的xtrabackup_slave_info文件內容,文件1、2行依次對應以下4行SQL語句中的第2、3行,文件第1行無需修改,原樣執行。文件第2行,添加內容修改為第3行SQL語句樣式。登錄MySQL終端依次執行SQL語句。

STOP?SLAVE; SET?GLOBAL?gtid_purged='49dde677-5827-11e5-8c5c-288023a0e898:1-21409262,?59bc2959-5827-11e5-8c5c-288023a0e9ac:1-8910790'; CHANGE?MASTER?TO?MASTER_HOST='RDS訪問地址',?MASTER_PORT=3306,?MASTER_USER='復制賬號',?MASTER_PASSWORD='密碼',?MASTER_AUTO_POSITION=1; START?SLAVE;

19.MySQL終端查詢主從復制狀態。

SHOW?SLAVE?STAUTS?\G

若Slave_IO_Running和Slave_SQL_Running兩行值都為Yes則表明主從復制狀態正常。


FAQ:

1、ERROR?1872?(HY000):?Slave?failed?to?initialize?relay?log?info?structure?from?the?repository

當遇到這個問題時可能是RDS的mysql庫存在問題,可以把ECS服務器上的數據庫的mysql庫拷貝到data目錄下,修改權限。這時啟動(start slave)后會報出缺少ha_health_check表,這時只需把線上的mysql庫下的這兩張表copy過來即可。

如若還是不行把performance_schema同時也copy過來即可。


轉載于:https://blog.51cto.com/zhangchuang/1863556

總結

以上是生活随笔為你收集整理的基于阿里云RDS创建ECS自建从库的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。