首页 > 数据库 > MySQL > 正文

MHA实现mysql5.6主从切换安装配置教程

2024-07-24 12:39:25
字体:
来源:转载
供稿:网友

下面给各位介绍一下MHA实现mysql5.6主从切换安装配置教程,希望此教程能帮助到大家.

基于这里的master/slave复制,我们这里介绍下MHA软件的安装与测试.

一、安装MHA软件:

  1. yum -y install perl-DBD-MySQL perl-Config-Tiny perl-Log-Dispatch perl-Parallel-ForkManager 
  2.  
  3. wget http://mysql-master-ha.googlecode.com/files/mha4mysql-node-0.52-0.noarch.rpm 
  4. wget https://mysql-master-ha.googlecode.com/files/mha4mysql-manager-0.52-0.noarch.rpm 
  5. wget https://mysql-master-ha.googlecode.com/files/mha4mysql-manager-0.52.tar.gz 

rpm包安装:

  1. rpm -ivh mha4mysql-manager-0.52-0.noarch.rpm 
  2. rpm -ivh mha4mysql-node-0.52-0.noarch.rpm 

源码包安装(我这里采用源码包安装,manager安装在slave上):

  1. tar zxvf mha4mysql-manager-0.52.tar.gz 
  2. cd mha4mysql-manager-0.52 
  3. perl Makefile.PL 
  4. make 
  5. make install 

二、配置基本环境:

1、配置master和slave之间可以ssh无密码登陆(这里略)

2、保证mha manager能登陆主从服务器的mysql

  1. --10.1.1.231上执行: 
  2.  
  3. grant all privileges on *.* to 'root'@'10.1.1.234' identified by 'rootpasswd'
  4. flush privileges
  5.  
  6. --10.1.1.234上执行: 
  7.  
  8. grant all privileges on *.* to 'root'@'10.1.1.231' identified by 'rootpasswd'
  9. flush privileges

三、修改mha的manager配置文件:

  1. [root@localhost mha4mysql-manager-0.52]#mkdir /etc/masterha 
  2. [root@localhost mha4mysql-manager-0.52]#mkdir -p /masterha/app1 
  3. [root@localhost mha4mysql-manager-0.52]#cp samples/conf/* /etc/masterha/ 
  4. [root@localhost mha4mysql-manager-0.52]#cat /etc/masterha/app1.cnf   
  5. [root@localhost mha4mysql-manager-0.52]#mkdir /etc/masterha 
  6. [root@localhost mha4mysql-manager-0.52]#mkdir -p /masterha/app1 
  7. [root@localhost mha4mysql-manager-0.52]#cp samples/conf/* /etc/masterha/ 
  8. [root@localhost mha4mysql-manager-0.52]#cat /etc/masterha/app1.cnf 
  9.  
  10. [server default
  11. manager_workdir=/masterha/app1/ 
  12. manager_log=/masterha/app1/manager.log 
  13. user=root  
  14. password=d3n0v0 
  15. ssh_user=root  
  16. repl_user=jpsync 
  17. repl_password=jpsyncpass2014la 
  18. ping_interval=1  
  19. shutdown_script=""  
  20. #master_ip_failover_script="/usr/local/bin/master_ip_failover"  
  21. master_ip_online_change_script=""  
  22. report_script="" 
  23.  
  24. [server1] 
  25. hostname=10.1.1.231 
  26. port=63306 
  27. master_binlog_dir="/state/partition1/mysql/data"  
  28. candidate_master=1 
  29. --Vevb.com 
  30. [server2] 
  31. hostname=10.1.1.234 
  32. port=63306 
  33. master_binlog_dir="/state/partition1/mysql/data"  
  34. candidate_master=1 

四、检测配置:检查ssh:

  1. [root@localhost masterha]# masterha_check_ssh  --conf=/etc/masterha/app1.cnf   
  2. Fri Sep 12 15:23:25 2014 - [info] Reading default configuratoins from /etc/masterha_default.cnf.. 
  3. Fri Sep 12 15:23:25 2014 - [info] Reading application default configurations from /etc/masterha/app1.cnf.. 
  4. Fri Sep 12 15:23:25 2014 - [info] Reading server configurations from /etc/masterha/app1.cnf.. 
  5. Fri Sep 12 15:23:25 2014 - [info] Starting SSH connection tests.. 
  6. Fri Sep 12 15:23:32 2014 - [debug]  
  7. Fri Sep 12 15:23:25 2014 - [debug]  Connecting via SSH from root@10.1.1.231(10.1.1.231) to root@10.1.1.234(10.1.1.234).. 
  8. Warning: untrusted X11 forwarding setup failed: xauth key data not generated 
  9. Warning: No xauth data; using fake authentication data for X11 forwarding. 
  10. Fri Sep 12 15:23:32 2014 - [debug]   ok. 
  11. Fri Sep 12 15:23:38 2014 - [debug]  
  12. Fri Sep 12 15:23:26 2014 - [debug]  Connecting via SSH from root@10.1.1.234(10.1.1.234) to root@10.1.1.231(10.1.1.231).. 
  13. Warning: untrusted X11 forwarding setup failed: xauth key data not generated 
  14. Warning: No xauth data; using fake authentication data for X11 forwarding. 
  15. Warning: untrusted X11 forwarding setup failed: xauth key data not generated 
  16. Warning: No xauth data; using fake authentication data for X11 forwarding. 
  17. Fri Sep 12 15:23:38 2014 - [debug]   ok. 
  18. Fri Sep 12 15:23:38 2014 - [info] All SSH connection tests passed successfully. 

检查mha启动状态:

  1. [root@localhost masterha]# masterha_check_status  --conf=/etc/masterha/app1.cnf  
  2. app1 (pid:11444) is running(0:PING_OK), master:10.1.1.231 

检查主从复制状态:

  1. [root@compute-0-52 masterha]# masterha_check_repl  --conf=/etc/masterha/app1.cnf  
  2. Fri Sep 12 16:15:12 2014 - [info] Reading default configuratoins from /etc/masterha_default.cnf.. 
  3. Fri Sep 12 16:15:12 2014 - [info] Reading application default configurations from /etc/masterha/app1.cnf.. 
  4. Fri Sep 12 16:15:12 2014 - [info] Reading server configurations from /etc/masterha/app1.cnf.. 
  5. Fri Sep 12 16:15:12 2014 - [info] MHA::MasterMonitor version 0.52. 
  6. Fri Sep 12 16:15:12 2014 - [info] Dead Servers: 
  7. Fri Sep 12 16:15:12 2014 - [info] Alive Servers: 
  8. Fri Sep 12 16:15:12 2014 - [info]   10.1.1.231(10.1.1.231:3306) 
  9. Fri Sep 12 16:15:12 2014 - [info]   10.1.1.234(10.1.1.234:3306) 
  10. Fri Sep 12 16:15:12 2014 - [info] Alive Slaves: 
  11. Fri Sep 12 16:15:12 2014 - [info]   10.1.1.234(10.1.1.234:3306)  Version=5.6.13-log (oldest major version between slaves) log-bin:enabled 
  12. Fri Sep 12 16:15:12 2014 - [info]     Replicating from 10.1.1.231(10.1.1.231:3306) 
  13. Fri Sep 12 16:15:12 2014 - [info]     Primary candidate for the new Master (candidate_master is set
  14. Fri Sep 12 16:15:12 2014 - [info] Current Alive Master: 10.1.1.231(10.1.1.231:3306) 
  15. Fri Sep 12 16:15:12 2014 - [info] Checking slave configurations.. 
  16. Fri Sep 12 16:15:12 2014 - <div class="warning shortcodestyle"></div>  relay_log_purge=0 is not set on slave 10.1.1.234(10.1.1.234:3306). 
  17. Fri Sep 12 16:15:12 2014 - [info] Checking replication filtering settings.. 
  18. Fri Sep 12 16:15:12 2014 - [info]  binlog_do_db= denovo_ng, binlog_ignore_db= information_schema,mysql,test 
  19. Fri Sep 12 16:15:12 2014 - [info]  Replication filtering check ok. 
  20. Fri Sep 12 16:15:12 2014 - [info] Starting SSH connection tests.. 
  21. Fri Sep 12 16:15:25 2014 - [info] All SSH connection tests passed successfully. 
  22. Fri Sep 12 16:15:25 2014 - [info] Checking MHA Node version.. 
  23. Fri Sep 12 16:15:32 2014 - [info]  Version check ok. 
  24. Fri Sep 12 16:15:32 2014 - [info] Checking SSH publickey authentication and checking recovery script configurations on the current master.. 
  25. Fri Sep 12 16:15:38 2014 - [info]   Executing command: save_binary_logs --command=test --start_file=mysql-master-bin.000004 --start_pos=4 --binlog_dir=/state/partition1/mysql/data --output_file=/var/tmp/save_binary_logs_test --manager_version=0.52  
  26. Fri Sep 12 16:15:38 2014 - [info]   Connecting to root@10.1.1.231(10.1.1.231)..  
  27. Warning: untrusted X11 forwarding setup failed: xauth key data not generated 
  28. Warning: No xauth data; using fake authentication data for X11 forwarding. 
  29.   Creating /var/tmp if not exists..    ok. 
  30.   Checking output directory is accessible or not.. 
  31.    ok. 
  32.   Binlog found at /state/partition1/mysql/data, up to mysql-master-bin.000004 
  33. Fri Sep 12 16:15:45 2014 - [info] Master setting check done. 
  34. Fri Sep 12 16:15:45 2014 - [info] Checking SSH publickey authentication and checking recovery script configurations on all alive slave servers.. 
  35. Fri Sep 12 16:15:45 2014 - [info]   Executing command : apply_diff_relay_logs --command=test --slave_user=root --slave_host=10.1.1.234 --slave_ip=10.1.1.234 --slave_port=63306 --workdir=/var/tmp --target_version=5.6.13-log --manager_version=0.52 --relay_log_info=/state/partition1/mysql/data/relay-log.info  --slave_pass=xxx 
  36. Fri Sep 12 16:15:45 2014 - [info]   Connecting to root@10.1.1.234(10.1.1.234)..  
  37. Warning: untrusted X11 forwarding setup failed: xauth key data not generated 
  38. Warning: No xauth data; using fake authentication data for X11 forwarding. 
  39.   Checking slave recovery environment settings.. 
  40.     Opening /state/partition1/mysql/data/relay-log.info ... ok. 
  41.     Relay log found at /state/partition1/mysql/data, up to compute-0-52-relay-bin.000007 
  42.     Temporary relay log file is /state/partition1/mysql/data/compute-0-52-relay-bin.000007 
  43.     Testing mysql connection and privileges..Warning: Using a password on the command line interface can be insecure. 
  44. mysql: Unknown OS character set 'ISO-8859-15'
  45. mysql: Switching to the default character set 'latin1'
  46.  done. 
  47.     Testing mysqlbinlog output.. done. 
  48.     Cleaning up test file(s).. done. 
  49. Fri Sep 12 16:15:51 2014 - [info] Slaves settings check done. 
  50. Fri Sep 12 16:15:51 2014 - [info]  
  51. 10.1.1.231 (current master) 
  52.  +--10.1.1.234 
  53.  
  54. Fri Sep 12 16:15:51 2014 - [info] Checking replication health on 10.1.1.234.. 
  55. Fri Sep 12 16:15:51 2014 - [info]  ok. 
  56. Fri Sep 12 16:15:51 2014 - <div class="warning shortcodestyle"></div> master_ip_failover_script is not defined. 
  57. Fri Sep 12 16:15:51 2014 - <div class="warning shortcodestyle"></div> shutdown_script is not defined. 
  58. Fri Sep 12 16:15:51 2014 - [info] Got exit code 0 (Not master dead). 
  59.  
  60. MySQL Replication Health is OK

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表