亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數據庫 > MySQL > 正文

Mysql GTID Mha配置方法

2024-07-24 13:12:39
字體:
來源:轉載
供稿:網友

Gtid + Mha +Binlog server配置:

1:測試環境

OS:CentOS 6.5
Mysql:5.6.28
Mha:0.56

192.168.1.21 mysql1 M1
192.168.1.22 mysql2 S1
192.168.1.23 mysql3 S2 Mha manage、Binlog server

2:配置/etc/my.cnf相關參數,在3各節點中分別配置

binlog-format=ROW log-slave-updates=true gtid-mode=on enforce-gtid-consistency=true master-info-repository=TABLE relay-log-info-repository=TABLE sync-master-info=1 slave-parallel-workers=2 binlog-checksum=CRC32 master-verify-checksum=1 slave-sql-verify-checksum=1 binlog-rows-query-log_events=1 

設置root密碼,創建復制用戶:

mysql> use mysql;mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "oracle123";mysql> update user set Password = password('oracle123') where User='root';mysql> flush privileges;mysql> GRANT replication slave ON *.* TO 'repl'@'%' identified by 'oracle';    mysql> flush privileges;

3:在mysql2、mysql3配置Gtid復制

CHANGE MASTER TO MASTER_HOST = '192.168.1.21',MASTER_PORT = 3306,MASTER_USER = 'repl',MASTER_PASSWORD = 'oracle',MASTER_AUTO_POSITION = 1;start slave;mysql> show slave status/G*************************** 1. row ***************************        Slave_IO_State: Waiting for master to send event         Master_Host: 192.168.1.21         Master_User: repl         Master_Port: 3306        Connect_Retry: 60       Master_Log_File: mysql-bin.000003     Read_Master_Log_Pos: 524        Relay_Log_File: mysql-relay-bin.000002        Relay_Log_Pos: 734    Relay_Master_Log_File: mysql-bin.000003       Slave_IO_Running: Yes      Slave_SQL_Running: Yes       Replicate_Do_DB:       ...... Master_SSL_Crlpath:       Retrieved_Gtid_Set: 9ee7c7af-cbf3-11e5-bf75-000c2923e459:1-2      Executed_Gtid_Set: 9ee7c7af-cbf3-11e5-bf75-000c2923e459:1-2        Auto_Position: 11 row in set (0.00 sec)

4:安裝Mha

rpm -Uvh epel-release-6-8.noarch.rpm

配置SSH等效:

在所有節點都執行

ssh-keygen -t rsassh-copy-id -i /root/.ssh/id_rsa.pub root@mysql1ssh-copy-id -i /root/.ssh/id_rsa.pub root@mysql2ssh-copy-id -i /root/.ssh/id_rsa.pub root@mysql3

測試ssh登錄,在3各節點分別測試:

ssh myqsl1ssh myqsl2ssh myqsl3

binlog server配置:在mysql3

mkdir -p /mysql/backup/binlog/usr/local/mysql/bin/mysqlbinlog -R --raw --host=192.168.1.20 --user='root' --password='oracle123' --stop-never mysql-bin.000003 &

最后那個binlog文件時給定從那個binlog文件開始。另外需要注意,當mysql1上的mysql進程退出后,binlog server也會退出。

需要安裝一些包做支持,使用yum網絡源;如安裝遇到問題可以嘗試yum update更新yum源或yum clean all清除緩存

在每個節點安裝 mha4mysql-node

yum -y install perl-DBD-MySQL ncftp
rpm -Uvh mha4mysql-node-0.56-0.el6.noarch.rpm

在mysql3上安裝mha-manager

yum install perlyum install cpanyum install perl-Config-Tinyyum install perl-Time-HiRes yum install perl-Log-Dispatchyum install perl-Parallel-ForkManager

如果安裝perl-Log-Dispatch,perl-Parallel-ForkManager安裝包報錯:

需要先安裝epel(可以參考https://fedoraproject.org/wiki/EPEL)

rpm -Uvh mha4mysql-manager-0.56-0.el6.noarch.rpm

5:配置Mha,在mysql3

mkdir -p /etc/masterha/app1vi /etc/masterha/app1.cnf[server default]user=root  password=oracle123manager_workdir=/etc/masterha/app1manager_log=/etc/masterha/app1/manager.logremote_workdir=/etc/masterha/app1ssh_user=rootrepl_user=repluserrepl_password=oracleping_interval=3master_ip_failover_script=/etc/masterha/app1/master_ip_failover[server1]hostname=192.168.1.21#ssh_port=9999master_binlog_dir=/mysql/logscheck_repl_delay=0       #防止master故障時候,切換時slave有延遲,可在那里切不過來candidate_master=1[server2]hostname=192.168.1.22#ssh_port=9999master_binlog_dir=/mysql/logscandidate_master=1[server3]hostname=192.168.1.23#ssh_port=9999master_binlog_dir=/mysql/logsno_master=1ignore_fail=1           #如果這個節點掛了,mha將不可用,加上這個參數slave掛了一樣可以用[binlog1]                   #binlog server需要mysqlbinlog命令hostname=192.168.1.23master_binlog_dir=/mysql/backup/binlog    #讀取binlog存放位置ignore_fail=1no_master=1vi /etc/masterha/app1/master_ip_failover#!/usr/bin/env perluse strict;use warnings FATAL => 'all';use Getopt::Long;my ($command, $ssh_user, $orig_master_host, $orig_master_ip,$orig_master_port, $new_master_host, $new_master_ip, $new_master_port);my $vip = '192.168.1.20';#Virtual IPmy $gateway = '192.168.1.1';#Gateway IPmy $interface = 'eth0';my $key = "1";my $ssh_start_vip = "/sbin/ifconfig $interface:$key $vip;/sbin/arping -I $interface -c 3 -s $vip $gateway >/dev/null 2>&1";my $ssh_stop_vip = "/sbin/ifconfig $interface:$key down";GetOptions('command=s' => /$command,'ssh_user=s' => /$ssh_user,'orig_master_host=s' => /$orig_master_host,'orig_master_ip=s' => /$orig_master_ip,'orig_master_port=i' => /$orig_master_port,'new_master_host=s' => /$new_master_host,'new_master_ip=s' => /$new_master_ip,'new_master_port=i' => /$new_master_port,);exit &main();sub main {print "/n/nIN script TEST====$ssh_stop_vip==$ssh_start_vip===/n/n";if ( $command eq "stop" || $command eq "stopssh" ) {# $orig_master_host, $orig_master_ip, $orig_master_port are passed.# If you manage master ip address at global catalog database,# invalidate orig_master_ip here.my $exit_code = 1;eval {print "Disabling the VIP on old master: $orig_master_host /n";&stop_vip();$exit_code = 0;};if ($@) {warn "Got Error: $@/n";exit $exit_code;}exit $exit_code;}elsif ( $command eq "start" ) {# all arguments are passed.# If you manage master ip address at global catalog database,# activate new_master_ip here.# You can also grant write access (create user, set read_only=0, etc) here.my $exit_code = 10;eval {print "Enabling the VIP - $vip on the new master - $new_master_host /n";&start_vip();$exit_code = 0;};if ($@) {warn $@;exit $exit_code;}exit $exit_code;}elsif ( $command eq "status" ) {print "Checking the Status of the script.. OK /n";`ssh $ssh_user/@$orig_master_host /" $ssh_start_vip /"`;exit 0;}else {&usage();exit 1;}}# A simple system call that enable the VIP on the new mastersub start_vip() {`ssh $ssh_user/@$new_master_host /" $ssh_start_vip /"`;}# A simple system call that disable the VIP on the old_mastersub stop_vip() {`ssh $ssh_user/@$orig_master_host /" $ssh_stop_vip /"`;}sub usage {print"Usage: master_ip_failover --command=start|stop|stopssh|status --orig_master_host=host --orig_master_ip=ip --orig_master_port=port --new_master_host=host --new_master_ip=ip --new_master_port=port/n";}chmod 777 /etc/masterha/app1/

配置文件測試:

# masterha_check_ssh --conf=/etc/masterha/app1.cnfThu May 26 23:25:35 2016 - [warning] Global configuration file /etc/masterha_default.cnf not found. Skipping.Thu May 26 23:25:35 2016 - [info] Reading application default configuration from /etc/masterha/app1.cnf..Thu May 26 23:25:35 2016 - [info] Reading server configuration from /etc/masterha/app1.cnf..Thu May 26 23:25:35 2016 - [info] Starting SSH connection tests..Thu May 26 23:25:35 2016 - [debug] Thu May 26 23:25:35 2016 - [debug] Connecting via SSH from root@192.168.1.21(192.168.1.21:22) to root@192.168.1.22(192.168.1.22:22)..Thu May 26 23:25:35 2016 - [debug]  ok.Thu May 26 23:25:35 2016 - [debug] Connecting via SSH from root@192.168.1.21(192.168.1.21:22) to root@192.168.1.23(192.168.1.23:22)..Thu May 26 23:25:35 2016 - [debug]  ok.Thu May 26 23:25:36 2016 - [debug] Thu May 26 23:25:35 2016 - [debug] Connecting via SSH from root@192.168.1.22(192.168.1.22:22) to root@192.168.1.21(192.168.1.21:22)..Thu May 26 23:25:35 2016 - [debug]  ok.Thu May 26 23:25:35 2016 - [debug] Connecting via SSH from root@192.168.1.22(192.168.1.22:22) to root@192.168.1.23(192.168.1.23:22)..Thu May 26 23:25:36 2016 - [debug]  ok.Thu May 26 23:25:36 2016 - [debug] Thu May 26 23:25:36 2016 - [debug] Connecting via SSH from root@192.168.1.23(192.168.1.23:22) to root@192.168.1.21(192.168.1.21:22)..Thu May 26 23:25:36 2016 - [debug]  ok.Thu May 26 23:25:36 2016 - [debug] Connecting via SSH from root@192.168.1.23(192.168.1.23:22) to root@192.168.1.22(192.168.1.22:22)..Thu May 26 23:25:36 2016 - [debug]  ok.Thu May 26 23:25:36 2016 - [info] All SSH connection tests passed successfully.#masterha_check_repl --conf=/etc/masterha/app1.cnfThu May 26 22:52:30 2016 - [warning] Global configuration file /etc/masterha_default.cnf not found. Skipping.Thu May 26 22:52:30 2016 - [info] Reading application default configuration from /etc/masterha/app1.cnf..Thu May 26 22:52:30 2016 - [info] Reading server configuration from /etc/masterha/app1.cnf..Thu May 26 22:52:30 2016 - [info] MHA::MasterMonitor version 0.56.Thu May 26 22:52:31 2016 - [info] GTID failover mode = 1Thu May 26 22:52:31 2016 - [info] Dead Servers:Thu May 26 22:52:31 2016 - [info] Alive Servers:Thu May 26 22:52:31 2016 - [info]  192.168.1.21(192.168.1.21:3306)Thu May 26 22:52:31 2016 - [info]  192.168.1.22(192.168.1.22:3306)Thu May 26 22:52:31 2016 - [info]  192.168.1.23(192.168.1.23:3306)Thu May 26 22:52:31 2016 - [info] Alive Slaves:Thu May 26 22:52:31 2016 - [info]  192.168.1.22(192.168.1.22:3306) Version=5.6.28-log (oldest major version between slaves) log-bin:enabledThu May 26 22:52:31 2016 - [info]   GTID ONThu May 26 22:52:31 2016 - [info]   Replicating from 192.168.1.21(192.168.1.21:3306)Thu May 26 22:52:31 2016 - [info]   Primary candidate for the new Master (candidate_master is set)Thu May 26 22:52:31 2016 - [info]  192.168.1.23(192.168.1.23:3306) Version=5.6.28-log (oldest major version between slaves) log-bin:enabledThu May 26 22:52:31 2016 - [info]   GTID ONThu May 26 22:52:31 2016 - [info]   Replicating from 192.168.1.21(192.168.1.21:3306)Thu May 26 22:52:31 2016 - [info]   Not candidate for the new Master (no_master is set)Thu May 26 22:52:31 2016 - [info] Current Alive Master: 192.168.1.21(192.168.1.21:3306)Thu May 26 22:52:31 2016 - [info] Checking slave configurations..Thu May 26 22:52:31 2016 - [info] read_only=1 is not set on slave 192.168.1.22(192.168.1.22:3306).Thu May 26 22:52:31 2016 - [info] read_only=1 is not set on slave 192.168.1.23(192.168.1.23:3306).Thu May 26 22:52:31 2016 - [info] Checking replication filtering settings..Thu May 26 22:52:31 2016 - [info] binlog_do_db= , binlog_ignore_db= Thu May 26 22:52:31 2016 - [info] Replication filtering check ok.Thu May 26 22:52:31 2016 - [info] GTID (with auto-pos) is supported. Skipping all SSH and Node package checking.Thu May 26 22:52:31 2016 - [info] HealthCheck: SSH to 192.168.1.23 is reachable.Thu May 26 22:52:31 2016 - [info] Binlog server 192.168.1.23 is reachable.Thu May 26 22:52:31 2016 - [info] Checking recovery script configurations on 192.168.1.23(192.168.1.23:3306)..Thu May 26 22:52:31 2016 - [info]  Executing command: save_binary_logs --command=test --start_pos=4 --binlog_dir=/mysql/backup/binlog --output_file=/etc/masterha/app1/save_binary_logs_test --manager_version=0.56 --start_file=mysql-bin.000004 Thu May 26 22:52:31 2016 - [info]  Connecting to root@192.168.1.23(192.168.1.23:22)..  Creating /etc/masterha/app1 if not exists..  ok. Checking output directory is accessible or not..  ok.Binlog found at /mysql/backup/binlog, up to mysql-bin.000004Thu May 26 22:52:31 2016 - [info] Binlog setting check done.Thu May 26 22:52:31 2016 - [info] Checking SSH publickey authentication settings on the current master..Thu May 26 22:52:31 2016 - [info] HealthCheck: SSH to 192.168.1.21 is reachable.Thu May 26 22:52:31 2016 - [info] 192.168.1.21(192.168.1.21:3306) (current master) +--192.168.1.22(192.168.1.22:3306) +--192.168.1.23(192.168.1.23:3306)Thu May 26 22:52:31 2016 - [info] Checking replication health on 192.168.1.22..Thu May 26 22:52:31 2016 - [info] ok.Thu May 26 22:52:31 2016 - [info] Checking replication health on 192.168.1.23..Thu May 26 22:52:31 2016 - [info] ok.Thu May 26 22:52:31 2016 - [info] Checking master_ip_failover_script status:Thu May 26 22:52:31 2016 - [info]  /etc/masterha/app1/master_ip_failover --command=status --ssh_user=root --orig_master_host=192.168.1.21 --orig_master_ip=192.168.1.21 --orig_master_port=3306 IN script TEST====/sbin/ifconfig eth1:1 down==/sbin/ifconfig eth1:1 192.168.1.20;/sbin/arping -I eth1 -c 3 -s 192.168.1.20 192.168.1.1 >/dev/null 2>&1===Checking the Status of the script.. OK Thu May 26 22:52:34 2016 - [info] OK.Thu May 26 22:52:34 2016 - [warning] shutdown_script is not defined.Thu May 26 22:52:34 2016 - [info] Got exit code 0 (Not master dead).MySQL Replication Health is OK.

MHA啟動及關閉

nohup masterha_manager --conf=/etc/masterha/app1.cnf > /etc/masterha/app1/manager.log < /dev/null 2>&1 &

檢查是否啟動:

masterha_check_status --conf=/etc/masterha/app1.cnfapp1 (pid:11447) is running(0:PING_OK), master:192.168.1.21

停止Mha:

masterha_stop --conf=/etc/masterha/app1.cnfStopped app1 successfully.[3]+ Exit 1         nohup masterha_manager --conf=/etc/masterha/app1.cnf > /etc/masterha/app1/manager.log < /dev/null 2>&1

測試:

說明,每次測試完成后,需要清理/etc/masterha/app1下的日志,然后啟動Mha manager.

1:關閉mysql1上的mysql,查看從庫從那里同步,以及mha日志輸出

2:恢復mysql1為mysql2的slave,change master語句可以在/etc/masterha/app1/manager.log里找到。

在配置GTID復制時候遇到 1032錯誤,用以下方法解決

mysql> show global variables like '%gtid%';+---------------------------------+------------------------------------------------------------------------------------+| Variable_name          | Value                                       |+---------------------------------+------------------------------------------------------------------------------------+| binlog_gtid_simple_recovery   | OFF                                        || enforce_gtid_consistency    | ON                                         || gtid_executed          | 88b05570-2599-11e6-880a-000c29c18cf5:1-3,9ee7c7af-cbf3-11e5-bf75-000c2923e459:1-4 || gtid_mode            | ON                                         || gtid_owned           |                                          || gtid_purged           |                                          || simplified_binlog_gtid_recovery | OFF                                        |+---------------------------------+------------------------------------------------------------------------------------+stop slave;set gtid_next='9ee7c7af-cbf3-11e5-bf75-000c2923e459:4';begin;commit;set gtid_next='automatic';start slave;show slave status/G; 

以上這篇Mysql GTID Mha配置方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持VeVb武林網。

 

注:相關教程知識閱讀請移步到MYSQL教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
91国产视频在线播放| 亚洲自拍偷拍区| 久久国产精品久久久久久久久久| 国产精品久久久久久久久久新婚| 国产日韩换脸av一区在线观看| 一本色道久久88综合日韩精品| 97精品国产97久久久久久| 精品中文字幕在线观看| 亚洲国产精久久久久久久| 欧美第一黄色网| 97在线免费观看视频| 亚洲乱亚洲乱妇无码| 日韩一区二区精品视频| 国产精自产拍久久久久久| 欧美一级高清免费| 欧美高清视频免费观看| 搡老女人一区二区三区视频tv| 伦理中文字幕亚洲| 在线成人一区二区| 日韩欧美亚洲国产一区| 精品国偷自产在线视频99| 亚洲国产精品中文| 日本最新高清不卡中文字幕| 亚洲最大av网| 亚洲片在线观看| 亚洲最大激情中文字幕| 欧美电影电视剧在线观看| 中文字幕一区二区精品| 精品国产91久久久久久| 91视频国产精品| 色妞在线综合亚洲欧美| 成人免费xxxxx在线观看| 久久精品99国产精品酒店日本| 国产精品丝袜久久久久久高清| 国产成人亚洲综合91| 亚洲韩国欧洲国产日产av| 91高潮精品免费porn| 欧美性xxxx极品高清hd直播| 亚洲精品av在线| 日韩免费在线播放| 视频在线观看一区二区| 久久免费国产视频| 欧美在线中文字幕| 97不卡在线视频| 日韩精品福利网站| 国产精品久久久久高潮| 久久视频免费在线播放| 国产91在线播放| 久久久久亚洲精品国产| 欧美日韩日本国产| 久久久国产精品亚洲一区| 欧美国产第二页| 成人有码在线视频| 久久全球大尺度高清视频| 欧美激情二区三区| 国产精品直播网红| 日韩在线欧美在线| 日本乱人伦a精品| 亚洲视频国产视频| 国产精品啪视频| 久久精品色欧美aⅴ一区二区| 亚洲精品电影网站| 国产亚洲精品美女久久久| 欧美高清不卡在线| 亚洲激情视频网站| 亚洲国产成人精品一区二区| 福利精品视频在线| 91精品国产91久久久| 精品视频一区在线视频| 69久久夜色精品国产69乱青草| 欧美另类暴力丝袜| 日韩在线播放av| 日韩欧美中文第一页| 国产成人免费av| 久久国产天堂福利天堂| 色偷偷888欧美精品久久久| 欧洲亚洲女同hd| 97精品欧美一区二区三区| 青青在线视频一区二区三区| 亚洲成人黄色网| 性色av一区二区三区在线观看| 狠狠色狠狠色综合日日五| 欧美亚洲在线视频| 中文字幕在线国产精品| 国产视频精品xxxx| 国产精品日韩欧美大师| 日韩中文字幕视频在线观看| 97在线精品国自产拍中文| 岛国视频午夜一区免费在线观看| 78m国产成人精品视频| 欧美性xxxx极品hd欧美风情| 热久久美女精品天天吊色| 久久久免费电影| 播播国产欧美激情| 国产婷婷97碰碰久久人人蜜臀| 亚洲精品久久久久久久久久久久久| 久久久久久久久91| 亚洲a一级视频| 国产精品美女视频网站| 色综合伊人色综合网| 国产在线拍揄自揄视频不卡99| 欧美专区日韩视频| 欧美在线视频在线播放完整版免费观看| 亚洲成年网站在线观看| 亚洲欧美日韩一区在线| 欧美午夜xxx| 2025国产精品视频| 一区二区三区日韩在线| 国产成人av在线播放| 成人欧美一区二区三区在线湿哒哒| 丝袜美腿亚洲一区二区| 98精品国产自产在线观看| 国产欧美一区二区三区四区| 久久久视频精品| 中文字幕一区二区三区电影| 亚洲国产成人一区| 国产午夜精品美女视频明星a级| 欧美高清视频一区二区| 日韩成人中文字幕在线观看| 一本色道久久88综合亚洲精品ⅰ| 中文字幕日韩在线观看| 亚洲美女性生活视频| 日韩精品视频中文在线观看| 成人福利网站在线观看11| 欧美日韩国产91| 97人人做人人爱| 最近2019好看的中文字幕免费| 成人乱人伦精品视频在线观看| 亚洲图片欧美日产| 日韩中文字幕视频在线观看| 日韩色av导航| 国产欧美一区二区三区视频| 欧美www视频在线观看| 欧美精品在线第一页| 久久久中文字幕| 深夜成人在线观看| 国产福利视频一区二区| 亚洲电影在线观看| 日本精品一区二区三区在线| 欧美激情视频给我| 成人xvideos免费视频| 亚洲国产精品一区二区三区| 亚洲精品白浆高清久久久久久| 欧美日韩爱爱视频| 亚洲精品一区中文| 日韩有码在线观看| 亚洲国产精品久久久久秋霞蜜臀| 亚洲色图校园春色| 久久久噜噜噜久噜久久| 亚洲精品成人av| 亚洲女人初尝黑人巨大| 久久影视免费观看| 欧美激情区在线播放| 国产精品一久久香蕉国产线看观看| 国产亚洲精品成人av久久ww| 亚洲美女激情视频| 亚洲精品福利在线| 成人黄色免费看| 日韩电影中文字幕一区| 国产精品影院在线观看| 久久av中文字幕| 欧美午夜丰满在线18影院| 欧美日韩午夜激情| 久久深夜福利免费观看|