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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

MySQL MHA配置常见问题

發(fā)布時(shí)間:2024/4/13 数据库 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MySQL MHA配置常见问题 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

MHA在MySQL數(shù)據(jù)庫中被廣泛使用,它小巧易用,功能強(qiáng)大,實(shí)現(xiàn)了基于MySQL replication架構(gòu)的自手動(dòng)主從故障轉(zhuǎn)移,從庫重定向到主庫并自動(dòng)同步。盡管如此,在部署配置的過程中,由于疏忽總難以避免這樣或那樣的錯(cuò)誤。本文是對MHA配置中常見問題的一個(gè)匯總,供大家參考。http://hovertree.com/menu/mysql/

?

1、非root用戶等效性環(huán)境等效性配置
??a、添加所有節(jié)點(diǎn)(含管理節(jié)點(diǎn))主機(jī)名及IP到host文件,所有節(jié)點(diǎn)操作
??b、生成基于非root用戶(如使用mysql賬戶)的對稱密鑰,使用ssh-keygen
??c、復(fù)制公鑰到其他各節(jié)點(diǎn)(含管理節(jié)點(diǎn)),如下,且使用了非缺省ssh 端口
????ssh-copy-id -i ~/.ssh/id_rsa.pub "-p 50011?mysql@172.16.16.10"?
??d、驗(yàn)證等效性(首次需要輸入密碼)
????ssh -p 50011 vdbsrv1 date;ssh -p 50011 vdbsrv2 date;ssh -p 50011 vdbsrv3 date;ssh -p 55555 vdbsrv4 date

?

2、MHA管理節(jié)點(diǎn)目錄權(quán)限問題
??###如果在管理節(jié)點(diǎn)使用了非root用戶進(jìn)行mha管理,則需要相關(guān)權(quán)限,否則報(bào)錯(cuò)
??###如下我們使用mysql用戶管理mha,則在root賬戶先創(chuàng)建相關(guān)目錄,在賦權(quán)給mysql
??# mkdir -p /var/log/masterha/app1
??# chown -R mysql:mysql /var/log/masterha
??# su - mysql
??$ masterha_check_repl --conf=/etc/app1.cnf???###使用mysql用戶校驗(yàn)復(fù)制關(guān)系

?

3、需要添加用于登陸到mysql服務(wù)器賬戶
??###需要STOP SLAVE, CHANGE MASTER, RESET SLAVE等相關(guān)權(quán)限,該賬戶要添加到mha配置文件中,主從切換時(shí)用到
??###在mysql數(shù)據(jù)庫各節(jié)點(diǎn)執(zhí)行,如下由于跨網(wǎng)段,所以分配了跨網(wǎng)段賬戶,否則,單條賦權(quán)即可
??### Author : Leshami
??### Blog?? :?http://blog.csdn.net/leshami
??mysql> grant all privileges on *.* to?'mha'@'172.16.16.%'?identified by '***';
??Query OK, 0 rows affected (0.00 sec)
??
??mysql> grant all privileges on *.* to?'mha'@'192.168.1.%'?identified by '***';
??Query OK, 0 rows affected (0.00 sec)

?

4、需要添加用于建立復(fù)制關(guān)系的賬戶
??###在mysql數(shù)據(jù)庫各節(jié)點(diǎn)執(zhí)行,如下由于跨網(wǎng)段,所以分配了跨網(wǎng)段賬戶,否則,單條賦權(quán)即可
??mysql> grant replication slave on *.* to?'repl'@'172.16.16.%'?identified by '***';
??Query OK, 0 rows affected (0.00 sec)
??
??mysql> grant replication slave on *.* to?'repl'@'192.168.1.%'?identified by '***';
??Query OK, 0 rows affected (0.00 sec)

?

5、從庫的各客戶端應(yīng)開啟binlog,即log_bin=on
??###未開啟則收到如下提示:
??Mon Apr 13 20:02:15 2015 - [warning]? log-bin is not set on slave SZ-DB-SLAVE01(192.168.81.3:3306).?
??This host cannot be a master.

?

6、各主從庫應(yīng)該使用相同的復(fù)制過濾規(guī)則
??###否則收到如下的錯(cuò)誤提示:
??Mon Apr 13 20:02:15 2015 - [error][/usr/lib/perl5/site_perl/5.8.8/MHA/ServerManager.pm, ln546] Replication?
????? filtering check failed on dbsrv3(192.168.1.3:3306)! All slaves must have same replication filtering rules.
????? Check SHOW SLAVE STATUS output and set my.cnf correctly.
??Mon Apr 13 20:02:15 2015 - [warning] Bad Binlog/Replication filtering rules:

?

7、各從庫應(yīng)設(shè)置relay_log_purge=0
??###否則收到以下告警信息 ##mysql -e 'set global relay_log_purge=0' 動(dòng)態(tài)修改該參數(shù),因?yàn)殡S時(shí)slave會(huì)提升為master。補(bǔ)充@150420
??Mon Apr 13 20:02:15 2015 - [warning]? relay_log_purge=0 is not set on slave vdbsrv2(172.16.16.12:3306).
??

8、各從庫設(shè)置read_only=1
??###否則收到以下告警信息?## mysql -e 'set global read_only=1' 動(dòng)態(tài)修改該參數(shù),因?yàn)殡S時(shí)slave會(huì)提升為master。補(bǔ)充@150420
??Mon Apr 13 20:19:54 2015 - [info]? read_only=1 is not set on slave vdbsrv3(172.16.16.13:3306).

?

9、mysqlbinlog version過低
??###大多數(shù)情況下我們使用yum方式安裝perl-DBD-MySQL,該方式會(huì)自動(dòng)安裝mysql rpm包。
??###MHA在執(zhí)行master_check_repl會(huì)調(diào)用/usr/bin/mysqlbinlog,對于源碼安裝在不同的路徑的mysql高版本
??###則收到如下錯(cuò)誤提示:
??Thu Apr 16 14:01:44 2015 - [info]?? Connecting to?mysql@192.168.1.7(vdbsrv2:22)..?
??mysqlbinlog version is 3.2 (included in MySQL Client 5.0 or lower). This is not recommended.?
????Consider upgrading MySQL Client to 5.1 or higher.
??
??###解決方案是編譯安裝perl-DBD-MySQL時(shí)指定mysql安裝位置,或者參考:mysqlbinlog can not parse row based events
??

10、缺省路徑下mysql客戶端如果不存在則出現(xiàn)以下提示
??###通過建立軟鏈或者yum install perl-DBD-MySQL會(huì)自動(dòng)安裝mysql
??Testing mysql connection and privileges..sh: mysql: command not found
??mysql command failed with rc 127:0!
?? at /usr/bin/apply_diff_relay_logs line 375

?

11、清理mysql.user用戶表中用戶名為空的記錄(補(bǔ)充@20150421)

??? 筆者有一次在做在線切換時(shí)發(fā)現(xiàn)復(fù)制賬戶從一個(gè)slave可以到新master,而無法從original master連接到新master,刪除用戶為空記錄后正常

推薦:http://www.cnblogs.com/roucheng/p/mysqljichu.html

轉(zhuǎn)載于:https://www.cnblogs.com/roucheng/p/mysqlmha.html

超強(qiáng)干貨來襲 云風(fēng)專訪:近40年碼齡,通宵達(dá)旦的技術(shù)人生

總結(jié)

以上是生活随笔為你收集整理的MySQL MHA配置常见问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。