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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

MYSQL管理之主从同步管理

發布時間:2025/5/22 数据库 146 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MYSQL管理之主从同步管理 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

原文地址:MYSQL管理之主從同步管理 作者:飛鴻無痕

MYSQL管理之主從同步管理

MYSQL主從同步架構是目前使用最多的數據庫架構之一,尤其是負載比較大的網站,因此對于主從同步的管理也就顯得非常重要,新手往往在出現主從同步錯誤的時候不知道如何入手,這篇文章就是根據自己的經驗來詳細敘述mysql主從的管理。

MYSQL主從同步的作用

(1)?數據分布
(2)?
負載平衡(load balancing)
(3)?
備份
(4)?
高可用性(high availability)和容錯

MYSQL主從同步的原理

關于MYSQL的主從同步,最主要的是要了解MYSQL的主從同步是如何工作的也即主從同步的原理,通過下圖能很明白的指導其工作的過程:

大致描述一下過程:從服務器的IO線程從主服務器獲取二進制日志,并在本地保存為中繼日志,然后通過SQL線程來在從上執行中繼日志中的內容,從而使從庫和主庫保持一致。主從同步的詳細過程如下:

1.?主服務器驗證連接。

2.?主服務器為從服務器開啟一個線程。

3.?從服務器將主服務器日志的偏移位告訴主服務器。

4.?主服務器檢查該值是否小于當前二進制日志偏移位。

5.??如果小于,則通知從服務器來取數據。

6.??從服務器持續從主服務器取數據,直至取完,這時,從服務器線程進入睡眠,主服務器線程同時進入睡眠。

7.?當主服務器有更新時,主服務器線程被激活,并將二進制日志推送給從服務器,并通知從服務器線程進入工作狀態。

8.?從服務器SQL線程執行二進制日志,隨后進入睡眠狀態。

?

MYSQL主從同步的搭建實戰

主從同步的搭建是一項比較細的技術活,前期做好了一些事情會讓你在以后的工作中減少很多工作,搭建的時候需要注意一些問題,一會搭建的時候會一邊搭建一邊介紹需要注意的問題,讓初學者能在剛開始的時候就有效的規避掉一些潛在的問題(MYSQL安裝這里不做介紹)

1.??主從同步環境介紹

操作系統環境:Centos 5.5 64 bit

MYSQL版本:MYSQL 5.1.50

主服務器的IP10.1.1.75

從服務器的IP10.1.1.76

2.???在主服務器上建立同步帳號

GRANT REPLICATION SLAVE,FILE ON *.* TO 'replication'@'10.1.1.%' IDENTIFIED BY '123456';

FLUSH PRIVILEGES;

注意:大家在設置權限的時候不要將密碼設置過于簡單!

3.???從服務器配置文件的更改

server-id = 2

replicate-wild-ignore-table=mysql.%

log-slave-updates? #這個有需要可以開啟

注意:

1)??server-id這一項需要認真檢查,一定不能和主服務器沖突了,不然到時候會出現莫民其妙的問題,因為同步的時候會會根據server-id做判斷,如果server-id一樣就不進行同步了,不然可能會導致死循環(主主同步或者環狀同步的時候)

2)???有的人會感覺奇怪我這里為什么要使用replicate-wild-ignore-table參數,而不是用replicate-do-db或者replicate-ignore-db來過濾需要同步的數據庫和不需要同步的數據庫。這里有幾個原因:

A.?replicate-wild-ignore-table參數能同步所有跨數據庫的更新,比如replicate-do-db或者replicate-ignore-db不會同步類似

use mysql;

UPDATE test.aaa SET amount=amount+10;

B.?replicate-wild-ignore-table=mysql.%在以后需要添加同步數據庫的時候能方便添加而不需要重新啟動從服務器的數據庫。因為以后很可能需要同步其他的數據庫。

3)?auto_increment_incrementauto_increment_offset參數,這兩個參數一般用在主主同步中,用來錯開自增值,防止鍵值沖突。

4)??--slave-skip-errors參數,不要胡亂使用這些跳過錯誤的參數,除非你非常確定你在做什么。當你使用這些參數時候,MYSQL會忽略那些錯誤,這樣會導致你的主從服務器數據不一致。

4.??從主服務器得到一個快照版本

如果你的是MYISAM或者既有MYISAM又有INNODB的話就在主服務器上使用如下命令導出服務器的一個快照:

mysqldump -uroot -p --lock-tables --events --triggers --routines --flush-logs --master-data=2 --databases test > db.sql

試過只有INNODB的話就是用如下命令:

mysqldump -uroot -p --single-transaction --events --triggers --routines --flush-logs --master-data=2 --databases test > db.sql

這里需要注意幾個參數的使用:

--single-transaction 這個參數只對innodb適用。

--databases 后面跟除mysql以后的其他所有數據庫的庫名,我這里只有一個test庫。

--master-data 參數會記錄導出快照時候的mysql二進制日志位置,一會會用到。

5.??將快照版本還原到從服務器上

mysqldump -uroot -p -h 10.1.1.76 test < db.sql

將快照版本還原到從服務器上以后,此時從服務器上的數據和主服務器的數據是一致的。

6.??在從服務器上使用change master從主服務器上同步

使用grep命令查找到二進制日志的名稱以及位置

[root@ns1 ~]# grep -i "change master" db.sql

-- CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000006', MASTER_LOG_POS=106;

生成CHANGE MASTER語句,然后在從上執行

STOP SLAVE;?

CHANGE MASTER TO MASTER_HOST='10.1.1.75',MASTER_USER='replication',MASTER_PASSWORD='123456',MASTER_LOG_FILE='mysql-bin.000006', MASTER_LOG_POS=106;

START SLAVE;

這樣就完成了主從同步的搭建,最后使用SHOW SLAVE STATUS\G;查看Slave_IO_RunningSlave_SQL_Running的狀態,如果都為Yes,就大功告成了。

注意:不要將同步的信息寫入配置文件中,不方便管理,尤其是有變動需要重啟。

?

MYSQL主從同步的管理

這里介紹一些管理MYSQL主從同步的命令:

1.??停止MYSQL同步

STOP SLAVE IO_THREAD;??? #停止IO進程

STOP SLAVE SQL_THREAD;??? #停止SQL進程

STOP SLAVE;?????????????????????????????? #停止IOSQL進程

2.??啟動MYSQL同步

START SLAVE IO_THREAD;??? #啟動IO進程

START SLAVE SQL_THREAD;? #啟動SQL進程

START SLAVE;???????????????????????????? #啟動IOSQL進程

3.???重置MYSQL同步

RESET SLAVE;

用于讓從屬服務器忘記其在主服務器的二進制日志中的復制位置, 它會刪除master.inforelay-log.info文件,以及所有的中繼日志,并啟動一個新的中繼日志,當你不需要主從的時候可以在從上執行這個操作。不然以后還會同步,可能會覆蓋掉你的數據庫,我以前就遇到過這樣傻叉的事情。哈哈!

4.???查看MYSQL同步狀態

SHOW SLAVE STATUS;

這個命令主要查看Slave_IO_RunningSlave_SQL_RunningSeconds_Behind_MasterLast_IO_ErrorLast_SQL_Error這些值來把握復制的狀態。

5.??臨時跳過MYSQL同步錯誤

經常會朋友mysql主從同步遇到錯誤的時候,比如一個主鍵沖突等,那么我就需要在確保那一行數據一致的情況下臨時的跳過這個錯誤,那就需要使用SQL_SLAVE_SKIP_COUNTER = n命令了,n是表示跳過后面的n個事件,比如我跳過一個事件的操作如下:

STOP SLAVE;

SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1;

START SLAVE;

6.??從指定位置重新同步

有的時候主從同步有問題了以后,需要從log位置的下一個位置進行同步,相當于跳過那個錯誤,這時候也可以使用CHANGE MASTER命令來處理,只要找到對應的LOG位置就可以,比如:

CHANGE MASTER TO MASTER_HOST='10.1.1.75',MASTER_USER='replication',MASTER_PASSWORD='123456',MASTER_LOG_FILE='mysql-bin.000006', MASTER_LOG_POS=106;

START SLAVE;

MYSQL主從同步的管理經驗介紹

1.???不要亂使用SQL_SLAVE_SKIP_COUNTER命令。

這個命令跳過之后很可能會導致你的主從數據不一致,一定要先將指定的錯誤記錄下來,然后再去檢查數據是否一致,尤其是核心的業務數據。

2.???結合percona-toolkit工具pt-table-checksum定期查看數據是否一致。

這個是DBA必須要定期做的事情,呵呵,有合適的工具何樂而不為呢?另外percona-toolkit還提供了對數據庫不一致的解決方案,可以采用pt-table-sync,這個工具不會更改主的數據。還可以使用pt-heartbeat來查看從服務器的復制落后情況。具體的請查看:http://blog.chinaunix.net/uid-20639775-id-3229211.html

3.???使用replicate-wild-ignore-table選項而不要使用replicate-do-db或者replicate-ignore-db

原因已經在上面做了說明。

4.???將主服務器的日志模式調整成mixed。

5.???每個表都加上主鍵,主鍵對數據庫的同步會有影響尤其是居于ROW復制模式。

?

?

轉載于:https://www.cnblogs.com/wajika/p/6228128.html

總結

以上是生活随笔為你收集整理的MYSQL管理之主从同步管理的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 天堂网av中文字幕 | av不卡在线免费观看 | 国产亚洲女人久久久久毛片 | 裸体男女树林做爰 | 国产蜜臀在线 | 波多野结衣高清视频 | 91污网站 | 日韩不卡在线 | 天天想你在线观看完整版电影高清 | 不用播放器的av网站 | 日本人妻伦在线中文字幕 | 最新激情网 | 黑丝国产在线 | 在线观看免费高清视频 | 成人在线观看h | 午夜偷拍视频 | 国产深喉视频一区二区 | 韩国三级与黑人 | 免费人成在线观看视频播放 | 91在线免费播放 | 亚洲码视频| 亚洲成人中文字幕 | 日日爽夜夜 | 国产精品视频专区 | 拔插拔插华人 | 日韩精品理论 | 免费成人美女女电影 | 欧美精品小视频 | 国产一级免费视频 | jzzjzzjzz亚洲成熟少妇 | 精品国产鲁一鲁一区二区张丽 | 国产成人一区二区在线 | 免费在线观看a级片 | 成人精品在线看 | jizzjizz中国精品麻豆 | 草草福利视频 | 一区二区三区免费高清视频 | 靠逼在线观看 | 99国产精品视频免费观看一公开 | 国产日韩欧美在线 | 亚洲免费一区视频 | chinesepron hd videos国产91 | 精品人妻午夜一区二区三区四区 | 亚洲av无码精品色午夜果冻不卡 | 欧美日韩亚洲国产一区 | 欧美 变态 另类 人妖 | 久久午夜鲁丝片 | 午夜美女福利视频 | 国产三级精品在线观看 | 91蝌蚪| 极品人妻一区二区三区 | 韩国性经典xxxxhd | 国产精品久久网 | 黄色的视频网站 | 欧美精品99| 欧洲黄色录像 | 精品久久久噜噜噜久久久 | 99日韩精品 | 在线视频一区二区 | 在线视频 日韩 | 日本黄视频在线观看 | 美女又黄又免费的视频 | 日韩啪 | 小视频在线播放 | 懂色aⅴ国产一区二区三区 亚洲欧美国产另类 | 丝袜在线一区 | 亲子乱子伦xxxx | 大学生高潮无套内谢视频 | 一区二区三区精品久久久 | 在线视频观看你懂得 | 在线免费观看黄色 | 99精品欧美 | 国产精品国产三级国产aⅴ中文 | 久久精品国产亚洲av麻豆图片 | 91精品在线观看入口 | 夜夜嗨av一区二区三区网页 | 少妇丰满尤物大尺度写真 | 久久久久久网址 | 久久女| 小嫩嫩精品导航 | 国产精品极品 | 超碰人人艹 | 制服丝袜中文字幕在线 | 亚洲性视频 | 好逼天天操 | 精品国精品国产 | 日韩av在线电影 | 国产热 | 中文字幕一区二区三区四区五区 | 无码日韩精品一区二区 | 中文字幕日韩国产 | 最近高清中文在线字幕在线观看 | 亚洲孕交| 激情内射亚洲一区二区三区爱妻 | 成人在线网站 | 新香蕉视频 | 国产精品手机视频 | 黄色精品| 久久黄色大片 |