mysql heartbeat 共享存储_mysql+heartbeat+nfs共享存储

mysql+heartbeat+nfs共享存储

e839d876882612beeea1cb54ae7e1b6a.png

第一步:完成基础环境的搭建

第二步:nfs服务配置

Yum install nfs-utils rpcbind (centos 6需要注意安装)

由于nfs服务不识别主机名,只识别ID号,所以必须先建立用户,ID号要和mysql服务器上的mysql用户(后面创建)的ID号保持一致,这里设定ID号都为306。

[[email protected] ~]# groupadd-g 306 -r mysql

[[email protected] ~]# useradd-g mysql -r -u 306 -s /sbin/nologin mysql

[[email protected] ~]# chown -Rmysql:mysql /sqldata/  #设置共享目录的权限

[[email protected] ~]#vi/etc/exports

/sqldata192.168.0.*/24(rw,no_root_squash)

让nfs服务开机自动启动:

[[email protected] ~]# chkconfignfs on

/etc/init.d/rpcbind start

[[email protected] ~]/etc/init.d/nfsstart

第三步:测试mysql1和mysql2是否能够挂载

1、保障本地挂载的目录的权限和nfs的目录权限一致

2、建立用户和本地挂载目录

mysql1~]# groupadd -g 306 -r mysql

mysql1~]# useradd -g mysql -u 306 -r mysql

mysql1~]# mkdir /data

3.客户端同样安装 yum install -ynfs-utilsrpcbind

4、启动rpcbind,通过showmount -e192.168.0.30查看挂载情况

mysql1~]/etc/init.d/rpcbind start

[[email protected]~]# showmount -e 192.168.0.30

Export listfor 192.168.0.30:

/mysqldata192.168.0.0/24

5、挂载nfs信息

Mount -t nfs192.168.0.30:/mysqldata/ /data/ #挂载目录

Filesystem            Size  Used Avail Use% Mounted on

192.168.0.30:/mysqldata/

20G  173M  19G   1% /data

Mysql2与mysql1的配置一致

第四步:配置安装mysql

1.安装mysql

cd /usr/local/src/

wgettar zxvf /usr/local/src/mysql-5.1.40-linux-i686-icc-glibc23.tar.gz

mv mysql-5.1.40-linux-i686-icc-glibc23 /usr/local/mysql

useradd -s /sbin/nologin mysql

cd /usr/local/mysql

mkdir -p /data/mysqlchown -R mysql:mysql /data/mysql#该用户已经建立,ID号为306./scripts/mysql_install_db --user=mysql --datadir=/data/mysql--basedir=/usr/local/mysqlcp support-files/my-large.cnf /etc/my.cnf

cp support-files/mysql.server /etc/init.d/mysqld

chmod 755 /etc/init.d/mysqld

vim /etc/init.d/mysqld   #修改datadir

chkconfig --add mysqld

chkconfig mysqld on

service mysqld start

步骤:1、建立mysql 用户 ;2、建立mysql存储目录;3、初始化数据库;4、COPY配置文件;5、copy启动文件;

在/etc/profile下,添加mysql的PATH,如下所示

PATH=$PATH:/usr/local/mysql/bin

执行,source/etc/profile #让PATH立即生效

第五步:验证NFS Server的共享存储

由于用户创建的数据都是存放在NFSServer上,所以在一台mysql服务器上创建的文件在另一台服务器上也应改能够看到,以实现数据同步,这里验证一下。

在节点mysql1上打开mysql服务并创建数据库,查看在节点mysql1上是否能够看到:

在节点mysql1上创建数据库db1:

00ae5e7bfabc91de081d1c255ab27e2c.png

此时在mysql2上查看是存在db1

507d2784cfa11c4164a4ddd11c70517e.png

第六步:安装配置heartbeat,安装过程参看博文中关于heartbeat部分

第七步:启动heartbeat

首先在mysql1和mysql2上关闭mysqld服务

e2e515a08c8ccd47dab5c8c2b9a4da0c.png

1fdb85f54094d4e350740597dd4cae33.png

然后,安装先主后从的顺序启动heartbeat(/etc/init.d/mysql start),接下来,如下所示可以发现mysql1(主)已经启动了mysqld服务,而mysql2上的mysqld则没有启动

c49877eccb54fb8403ea400e474928be.png

2d7c829426284a9037aee901d6bd591f.png

第八步:通过远程的方式连接mysqld数据库,既连接192.168.1.200(虚拟IP地址)

1、授权192.168.1.200允许被访问

4c74f674252f44b8e8105e2266566e5b.png

2、在mysql1上,连接mysql数据库

mysql -h 192.168.1.200 -uroot

bb5189998d781b4015b44f538a4b217c.png

3、主上停止heartbeat服务

service heartbeat stop

同理mysql2会接替mysql1的工作

4、在mysql2上,再次连接mysqld,同样连接成功,且数据一致

mysql -h 192.168.1.200 -uroot

6c1e863a0dba65fe4c6be335dfe19c17.png

原文:http://469952080.blog.51cto.com/8311493/1687488

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Re: MySQL 高可用工具 heartbeat 实战部署详解 ===============================================# heartbeat作用(无缝漂移):  通过heartbeat,可以将资源(ip以及程序服务[例如:httpd或mysqld服务]等资源)从一台已经故障的计算机快速转移到另一台正常运转的机器上继续提供服务,即高可用HA 资源的内容包括:ip地址和服务(例如:httpd或mysqld服务) # HeartBeat的工作原理:        a) heartbeat的主备模式(第1种模式)(推荐方式:本章演示重点) 通过修改heartbeat配置文件,可以指定那一台heartbeat服务器作为主服务器,则另一台将自动成为热备服务器然后在热备服务器上配置heartbeat守护程序来监听来自主服务器的心跳消息。如果热备服务器在指定时间内未监听到来自主服务器的心跳,就会启动故障转移程序,并取得主服务器上的相关资源服务的所有权,接替主服务器继续不间断的提供服务,从而达到资源以及服务高可用(HA)的目的。           b) heartbeat主主模式(第2种模式)(不推荐) 两台服务器互为主备,这是他们之间还会互相发送报文来告诉对方自己的当前的状态,如果在指定的时间内未收到对方发送的心跳报文,那么,一方就会认为对方失效或者是已经宕机了,这时每个运行正常的主机就会启动自身的资源接管模块来接管运行在对方主机上的资源或者是服务,继续为用户提供服务。      

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值