搭建MySql数据库的主从及实现双机热备(数据库的高可用)

1. 用的CentOS7,因为CentOS7自带mariadb,所以首先卸载mariadb.不卸载安装mysql会有冲突,以前安装过mysql也要卸载

2. 卸载mariadb              

      执行命令(会列出所有的mariadb)

rpm -qa | grep mariadb

      执行命令删除所有的mariadb

yum -y remove mariadb*

3.安装mysql   执行下载mysql的yum源命令

wget -P /home/lisonglin http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm

   安装yum源

rpm -ivh mysql57-community-release-el7-11.noarch.rpm

    安装mysql

yum install mysql-community-server

      最后出现 complete表示安装成功

      启动mysql

systemctl start mysqld

4.一样的操作,安装第二台mysql       

5.实现主从复制(最好两个数据的数据一致,不然会出问题,先实现主从,后实现双机热备)

   这是原理图,配置完成后,数据会写入二进制日志,然后通过IO线程写到另一台机器的中继日志,最后通过sql线程,写到数据库

    进入mysql的配置文件

vim /etc/my.cnf

   (按i进入编辑模式,esc退出编辑模式,:wq保存编辑并退出)

   在主库中的配置文件中添加这两行

    改完后重启mysql,在mysql安装目录会多出两个文件

 

6.以同样的方式配置从库  server-id的值不能和主库一样!!!!

7.开始搭建主从

     先查看主库状态(这是在主库操作)

SHOW MASTER STATUS

 

  查询出来的file 和  Position  后边要用到

  然后在从库操作

   第一步:(搭建主从同步)

SHOW MASTER STATUS;

   第二步:

CHANGE MASTER to MASTER_HOST="192.168.126.137",#你主库的ip
MASTER_PORT=3306,MASTER_user="root",#你主库用户名密码
MASTER_PASSWORD="root",
#主库执行show master status查询出来的File  和Position
MASTER_LOG_FILE="mysql-bin.000002",
MASTER_LOG_POS=154

  第三步:(开启主从服务)

start slave

 第四步:(检测线程是否启用)

show slave status

  两都是Yes,表示配置主从成功

  OK主从配置完成

  在主库新建一个数据库,建几张表,看看有没有同步到从库,同步就OK了(不要在从库添加)

 

8.实现双机热备

    把搭建主从的流程在反过来执行一遍就可以了

     在从库执行(查看从库状态)

SHOW MASTER STATUS

   在主库配置

   第一步:

show MASTER STATUS;

  第二步:

CHANGE MASTER to MASTER_HOST="192.168.126.138",#你从库的ip
MASTER_PORT=3306,MASTER_user="root",#你从库用户名密码
MASTER_PASSWORD="root",
#从库执行show master status查询出来的File  和Position
MASTER_LOG_FILE="mysql-bin.000002",
MASTER_LOG_POS=154

  第三步:

start slave

  第四步:

show slave status

OK,双机热备搭建完成.两个mysql数据库互为主从,都可进行写入,读取,实现了数据库的高可用

 

猜你喜欢

转载自blog.csdn.net/weixin_42160445/article/details/82012066