搭建mysql的MHA架構(gòu)的詳細(xì)步驟

本文主要給大家介紹搭建MySQL的MHA架構(gòu)的詳細(xì)步驟,文章內(nèi)容都是筆者用心摘選和編輯的,具有一定的針對性,對大家的參考意義還是比較大的,下面跟筆者一起了解下搭建mysql的MHA架構(gòu)的詳細(xì)步驟吧。      

為企業(yè)提供網(wǎng)站制作、成都網(wǎng)站制作、網(wǎng)站優(yōu)化、營銷型網(wǎng)站、競價(jià)托管、品牌運(yùn)營等營銷獲客服務(wù)。成都創(chuàng)新互聯(lián)公司擁有網(wǎng)絡(luò)營銷運(yùn)營團(tuán)隊(duì),以豐富的互聯(lián)網(wǎng)營銷經(jīng)驗(yàn)助力企業(yè)精準(zhǔn)獲客,真正落地解決中小企業(yè)營銷獲客難題,做到“讓獲客更簡單”。自創(chuàng)立至今,成功用技術(shù)實(shí)力解決了企業(yè)“網(wǎng)站建設(shè)、網(wǎng)絡(luò)品牌塑造、網(wǎng)絡(luò)營銷”三大難題,同時(shí)降低了營銷成本,提高了有效客戶轉(zhuǎn)化率,獲得了眾多企業(yè)客戶的高度認(rèn)可!

實(shí)驗(yàn)思路:
1. MHA架構(gòu)
1)數(shù)據(jù)庫安裝
2)一主兩從
3) MHA搭建
2.故障模擬
1)主庫失效
2)備選主庫成為主庫.
3)從庫2將備選主庫指向?yàn)橹鲙?br/>案例環(huán)境
1.本案例環(huán)境
云服務(wù)器CentOS7. 4(64位)[ MHA manager/192. 168. 195. 128
管理節(jié)點(diǎn),安裝manager. 組件
服務(wù)器Cent0S7. 4(64位) Mysq11/192. 168. 195. 129 Master 節(jié)點(diǎn),安裝node組件
云服務(wù)器Cent0S7. 4(64位) Mysq12/192. 168. 195. 130 Slave 節(jié)點(diǎn),安裝node組件
云服務(wù)器Cent0S7. 4(64位) Mysq13/192. 168. 195. 131 Slave 節(jié)點(diǎn),安裝node 組件
這里操作系統(tǒng)是Cent0S7 版本,所以這里下載MHA版本是0.57版本。
2. 案例需求
本案例要求通過MHA監(jiān)控MySQL數(shù)據(jù)庫在故障時(shí)進(jìn)行自動切換,不影響業(yè)務(wù)。
3.案例實(shí)現(xiàn)思路
1) 安裝MySQL 數(shù)據(jù)庫,
2)配置MySQL一-主兩從
3) 安裝MHA軟件
4)
配置無密碼認(rèn)證
5)配置MySQL MHA高可用
6) 模擬master 故障切換
在三臺MySQL節(jié)點(diǎn)上分別安裝數(shù)據(jù)庫,MySQL版本請使用5. 6.36,cmake 版本請使
用2.8.6。下面只在Mysq11. 上面做演示,安裝過程如下。
搭建mysql的MHA架構(gòu)的詳細(xì)步驟

curl -o /etc/yum.repos.d/CentOS-Base.repohttp://mirrors.aliyun.com/repo/Centos-7.repo
wgetftp://192.168.10.250/pub/MHA/*
1.安裝編譯依賴的環(huán)境
[ root@Mysq11 ] # yum -y install ncurses-devel gcc-c++ perl-Module-Install

2.
安裝gmake_ 編譯軟件
tar zxvf cmake-2.8.6.tar.gz
cd cmake-2.8.6
./configure
gmake -j6 && gmake install

3.安裝MySQL_數(shù)據(jù)庫
tar -zxvf mysql-5.6.36.tar.gz
cd mysql-5.6.36
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DSYSCONFDIR=/etc

make -j12 && make instal
cp support-files/my-default.cnf /etc/my.cn
cp support-files/mysql.server /etc/rc.d/init.d/mysqld
chmod +x /etc/rc.d/init.d/mysqld

chkconfig --add mysqld
echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
source /etc/profile
useradd -M -s /sbin/nologin mysql
chown -R mysql.mysql /usr/local/mysql/

/usr/local/mysql/scripts/mysql_install_db \
--basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data \
--user=mysql

4.修改Master的主配置文件/etc/my. cnf 文件,三臺云服務(wù)器的
server-id不能一樣
vim /etc/my.cnf
[mysqld]
server-id = 1
log-bin = master-bin
log-slave-updates = true

配置從云服務(wù)器:
在/etc/my.cnf_ 中修改或者增加下面內(nèi)容。
vim /etc/my. cnf
server-id = 2
log-bin = master-bin
relay-log = relay-log-bin
relay-log-index = slave-relay-bin.index

5. master、 slave1、 slave2 分別做兩個(gè)軟鏈接.
ln -s /usr/local/mysql/bin/mysql /usr/sbin/
ln -s /usr/local/mysql/bin/mysqlbinlog /usr/sbin/

/usr/local/mysql/bin/mysqld_safe --user=mysql &
systemctl stop firewalld.service

#從庫同步使用用戶myslave  另外一個(gè)是manager 使用監(jiān)控用戶mha
mysql> grant replication slave on *.* to 'myslave'@'192.168.1.%' identified by '123';
mysql> grant all privileges on *.* to 'mha'@'192.168.1.%' identified by 'manager';

#下面三條授權(quán)按理論是不用添加的,但是案例實(shí)驗(yàn)環(huán)境通過MHA檢查時(shí)候會報(bào)錯(cuò)
grant all privileges on *.* to 'mha'@'host1' identified by 'manager';
grant all privileges on *.* to 'mha'@'host2' identified by 'manager';
grant all privileges on *.* to 'mha'@'host3' identified by 'manager';

change master to master_host='192.168.1.101',master_user='myslave',
master_password='123',master_log_file='master-bin.000004',master_log_pos=245
set global read_only=1

curl -o /etc/yum.repos.d/CentOS-Base.repohttp://mirrors.aliyun.com/repo/Centos-7.repo
每臺云服務(wù)器都需要安裝Perl的環(huán)境
yum -y install epel-release --nogpgcheck

yum -y install perl-DBD-MySQL \
perl-Config-Tiny \
perl-Log-Dispatch \
perl-Parallel-ForkManager \
perl-ExtUtils-CBuilder \
perl-ExtUtils-MakeMaker \
perl-CPAN

所有服務(wù)都需要裝node
manager云服務(wù)器上裝的時(shí)候,要先安裝node軟件包
tar zxvf mha4mysql-node-0.57.tar.gz
cd mha4mysql-node-0.57/
perl Makefile.PL
make && make install

manager云服務(wù)器
tar zxvf mha4mysql-manager-0.57.tar.gz
perl Makefile.PL
make && make install

manager安裝后在/usr/local/bin下面會生成幾個(gè)工具,主要包括以下幾個(gè):
masterha_check_ssh檢查MHA的SSH配置狀況
masterha_check_repl檢查MySQL 復(fù)制狀況
masterha_manger 啟動manager的腳本
masterha_check_status檢測當(dāng)前MHA運(yùn)行狀態(tài)
masterha_master_monitor檢測master 是否宕機(jī)
masterha_master_switch 控制故障轉(zhuǎn)移(自動或者手動)
masterha_conf_ host添加或刪除配置的server 信息
masterha_stop   關(guān)閉manager

4. node 安裝后也會在/usr/local/bin 下面會生成幾個(gè)腳本(這些工具通常由MHA
iManager 的腳本觸發(fā),無需人為操作)主要如下:
save_binary_logs 保存和復(fù)制master. 的二進(jìn)制日志
apply_diff_relay_logs 識別差異的中繼日志事件并將其差異的事件應(yīng)用于其他的slave
filter_mysqlbinlog去除不必要的ROLLBACK 事件(MHA已不再使用這個(gè)工具)
purge_relay_logs清除中繼日志(不會阻塞SQL線程)

配置無密碼訪問
manager云服務(wù)器
ssh-keygen
ssh-copy-id 192.168.1.101
ssh-copy-id 192.168.1.102
ssh-copy-id 192.168.1.103

master云服務(wù)器
ssh-keygen
ssh-copy-id 192.168.1.102
ssh-copy-id 192.168.1.103

slave1云服務(wù)器
ssh-keygen
ssh-copy-id 192.168.1.101
ssh-copy-id 192.168.1.103

slave2云服務(wù)器
ssh-keygen
ssh-copy-id 192.168.1.101
ssh-copy-id 192.168.1.103

###配置MHA云服務(wù)器
在manager節(jié)點(diǎn)上復(fù)制相關(guān)的腳本到/usr/local/bin目錄
cp -ra /mnt/mha4mysql-manager-0.57/samples/scripts /usr/local/bin/

復(fù)制上述自動切換時(shí)VIP管理的腳本到cp /usr/local/bin/scripts/master_ip_failover /usr/local/bin
vim /usr/local/bin/master_ip_failover
腳本在FTP云服務(wù)器上

創(chuàng)建MHA軟件目錄并拷貝配置文件
mkdir /etc/masterha
cp /mnt/mha4mysql-manager-0.57/samples/conf/app1.cnf  /etc/masterha/
vim /etc/masterha/app1.cnf

#測試各個(gè)節(jié)點(diǎn)的SSH能不能實(shí)現(xiàn)
masterha_check_ssh -conf=/etc/masterha/app1.cnf
#檢測mysql是否可以監(jiān)聽
masterha_check_repl -conf=/etc/masterha/app1.cnf

//注意第一次配置需要去master上手動開啟虛擬IP
/sbin/ifconfig ens32:1 192.168.1.200/24

#手動啟動MHA
nohup  masterha_manager --conf=/etc/masterha/app1.cnf --remove_dead_master_conf --ignore_last_failover < /dev/null > /var/log/masterha/app1/manager.log 2>&1 &  
#查看現(xiàn)在的master狀態(tài)
masterha_check_status -conf=/etc/masterha/app1.cnf

#監(jiān)控manager狀態(tài)
tailf /var/log/masterha/app1/manager.log
grant all on *.* to test@'192.168.1.%' identified by 'test';

看完以上關(guān)于搭建mysql的MHA架構(gòu)的詳細(xì)步驟,很多讀者朋友肯定多少有一定的了解,如需獲取更多的行業(yè)知識信息 ,可以持續(xù)關(guān)注我們的行業(yè)資訊欄目的。

網(wǎng)站題目:搭建mysql的MHA架構(gòu)的詳細(xì)步驟
網(wǎng)站網(wǎng)址:http://bm7419.com/article46/pcsgeg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App開發(fā)、網(wǎng)站營銷、App設(shè)計(jì)、網(wǎng)站建設(shè)、ChatGPT品牌網(wǎng)站設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁設(shè)計(jì)公司