设为首页 加入收藏

TOP

Mysql高可用架构MHA搭建及测试故障转移(一)
2014-11-23 22:58:30 来源: 作者: 【 】 浏览:24
Tags:Mysql 可用 架构 MHA 搭建 测试 故障 转移

MHA项目网站

https://code.google.com/p/mysql-master-ha/

一.环境介绍

1.主机部署

manager机:10.10.54.154
master机:10.10.54.156
slave1机:10.10.54.155(备用master)

slave2机:10.10.54.157

2.大致步骤
A.首先用ssh-keygen实现四台主机之间相互免密钥登录
B.安装MHAmha4mysql-node,mha4mysql-manager 软件包
C.建立master,slave1,slave2之间主从复制
D.管理机manager上配置MHA文件
E.masterha_check_ssh工具验证ssh信任登录是否成功
F.masterha_check_repl工具验证mysql复制是否成功
G.启动MHA manager,并监控日志文件
H.测试master(156)宕机后,是否会自动切换

3.说明:下面中括号中的主机名说明了当前操作是在哪台机子上进行的

二.首先用ssh-keygen实现四台主机之间相互免密钥登录

[manager机]
shell> ssh-keygen -t rsa -b 2048
shell> scp-copy-id root@10.10.54.155

shell> scp-copy-id root@10.10.54.156

shell> scp-copy-id root@10.10.54.157

在另外三台机子重复此步骤,使四台机子中的任何两台之间可以免密码登录

三.安装MHAmha4mysql-node,mha4mysql-manager 软件包

1.四台主机上安装MHAmha4mysql-node

1 2 3 4 5 [manager,master,slave1,slave2] shell> yum update shell> yum -y install perl-DBD-MySQL ncftp shell> wget http://mysql-master-ha.googlecode.com/files/mha4mysql-node-0.53-0.noarch.rpm sehll> rpm -ivh mha4mysql-node-0.53-0.noarch.rpm

2.在manager机子上安装mha4mysql-manager

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 [manager] shell> yum install perl shell> yum install cpan shell> rpm -ivh mha4mysql-manager-0.53-0.el6.noarch.rpm error: perl(Config::Tiny) is needed by mha4mysql-manager-0.53-0.noarch perl(Log::Dispatch) is needed by mha4mysql-manager-0.53-0.noarch perl(Log::Dispatch::File) is needed by mha4mysql-manager-0.53-0.noarch perl(Log::Dispatch::Screen) is needed by mha4mysql-manager-0.53-0.noarch perl(Parallel::ForkManager) is needed by mha4mysql-manager-0.53-0.noarch perl(Time::HiRes) is needed by mha4mysql-manager-0.53-0.noarch [solution] shell> wget ftp://ftp.muug.mb.ca/mirror/centos/5.10/os/x86_64/CentOS/perl-5.8.8-41.el5.x86_64.rpm shell> wget ftp://ftp.muug.mb.ca/mirror/centos/6.5/os/x86_64/Packages/compat-db43-4.3.29-15.el6.x86_64.rpm shell> wget http://downloads.naulinux.ru/pub/NauLinux/6x/i386/sites/School/RPMS/perl-Log-Dispatch-2.27-1.el6.noarch.rpm shell> wget http://dl.fedoraproject.org/pub/epel/6/i386/perl-Parallel-ForkManager-0.7.9-1.el6.noarch.rpm shell> wget http://dl.fedoraproject.org/pub/epel/6/i386/perl-Mail-Sender-0.8.16-3.el6.noarch.rpm shell> wget http://dl.fedoraproject.org/pub/epel/6/i386/perl-Mail-Sendmail-0.79-12.el6.noarch.rpm shell> wget http://mirror.centos.org/centos/6/os/x86_64/Packages/perl-Time-HiRes-1.9721-136.el6.x86_64.rpm shell> rpm -ivh perl-Parallel-ForkManager-0.7.9-1.el6.noarch.rpm perl-Log-Dispatch-2.27-1.el6.noarch.rpm perl-Mail-Sender-0.8.16-3.el6.noarch.rpm perl-Mail-Sendmail-0.79-12.el6.noarch.rpm perl-Time-HiRes-1.9721-136.el6.x86_64.rpm shell> rpm -ivh mha4mysql-manager-0.53-0.el6.noarch.rpm

四.建立master,slave1,slave2之间主从复制

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 [master:156] 1.shell> vim /etc/my.cnf #server-id 改为1 server-id=1 log-bin=mysql-bin binlog_format=mixed #授权操作 2.mysql> GRANT ALL PRIVILEGES ON *.* TO 'rep'@'10.10.54.%' IDENTIFIED BY 'rep123'; mysql> flush privileges; 3.mysql> show master status; [slave1,slave2] 4.change master操作 mysql> change master to master_host='10.10.54.156', master_port=3306, master_user='rep', master_password='rep123', master_log_file='mysql-bin.000001', master_log_pos=112;

注意:slave1机子上也要授权,因为这个是备用

首页 上一页 1 2 3 下一页 尾页 1/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇修改MySQL中一个用户的密码 下一篇MySQL架构组成之逻辑模块组成

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: