jqkyp 发表于 2019-1-7 11:10:12

mysql+heartbeat+nfs共享存储

mysql+heartbeat+nfs共享存储
http://s3.运维网.com/wyfs02/M01/71/DF/wKioL1XZ6XDwTtLgAADx3Slk5AQ136.jpg
  第一步:完成基础环境的搭建
  第二步:nfs服务配置
  Yum install nfs-utils rpcbind (centos 6需要注意安装)
由于nfs服务不识别主机名,只识别ID号,所以必须先建立用户,ID号要和mysql服务器上的mysql用户(后面创建)的ID号保持一致,这里设定ID号都为306。

  # groupadd-g 306 -r mysql
  # useradd-g mysql -r -u 306 -s /sbin/nologin mysql
  
  # chown -Rmysql:mysql /sqldata/#设置共享目录的权限
  #vi/etc/exports
  /sqldata192.168.0.*/24(rw,no_root_squash)
  
  让nfs服务开机自动启动:
  # chkconfignfs on
  /etc/init.d/rpcbind start
  /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-utils rpcbind
  
4、启动rpcbind,通过showmount -e192.168.0.30查看挂载情况
  mysql1 ~]/etc/init.d/rpcbind start
  
  # 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/ #挂载目录
  #df -h
  Filesystem            SizeUsed Avail Use% Mounted on
  192.168.0.30:/mysqldata/
                       20G173M19G   1% /data
  
  Mysql2与mysql1的配置一致
  
  第四步:配置安装mysql
1. 安装mysql
cd /usr/local/src/
wget http://syslab.comsenz.com/downlo... -icc-glibc23.tar.gz
tar 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/mysql                      
chown -R mysql:mysql /data/mysql     #该用户已经建立,ID号为306
./scripts/mysql_install_db --user=mysql --datadir=/data/mysql --basedir=/usr/local/mysql
cp 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:

http://s3.运维网.com/wyfs02/M00/71/E3/wKiom1XZ52vCovhgAACF1hR7NrE224.jpg
  此时在mysql2上查看是存在db1
http://s3.运维网.com/wyfs02/M01/71/E3/wKiom1XZ53XQk9tOAAETAqz1imo058.jpg
  第六步:安装配置heartbeat,安装过程参看博文中关于heartbeat部分
  第七步:启动heartbeat
  首先在mysql1和mysql2上关闭mysqld服务
http://s3.运维网.com/wyfs02/M02/71/DF/wKioL1XZ6ZehGYpLAAA-eZorUdQ903.jpg
http://s3.运维网.com/wyfs02/M01/71/DF/wKioL1XZ6ZfzNYFjAAAxYdU8tmQ420.jpg
  然后,安装先主后从的顺序启动heartbeat(/etc/init.d/mysql start),接下来,如下所示可以发现mysql1(主)已经启动了mysqld服务,而mysql2上的mysqld则没有启动
http://s3.运维网.com/wyfs02/M02/71/E3/wKiom1XZ55eSDFCGAAA7WbyVW1w829.jpg
http://s3.运维网.com/wyfs02/M00/71/DF/wKioL1XZ6aqRb8ZIAAAtOwtGOms256.jpg
  第八步:通过远程的方式连接mysqld数据库,既连接192.168.1.200(虚拟IP地址)
  1、授权192.168.1.200允许被访问
http://s3.运维网.com/wyfs02/M00/71/E3/wKiom1XZ57KSJnZxAADDmqU5w4M627.jpg
2、在mysql1上,连接mysql数据库
  mysql -h 192.168.1.200 -uroot
http://s3.运维网.com/wyfs02/M01/71/E3/wKiom1XZ57yjVjnQAAB7dig9jZo468.jpg
  3、主上停止heartbeat服务
  service heartbeat stop
  同理mysql2会接替mysql1的工作
  
4、在mysql2上,再次连接mysqld,同样连接成功,且数据一致
  mysql -h 192.168.1.200 -uroot
http://s3.运维网.com/wyfs02/M02/71/DF/wKioL1XZ6drxGn86AABMiSZJDd8812.jpg
  
  
  
  
  
  
  
  




页: [1]
查看完整版本: mysql+heartbeat+nfs共享存储