首页 > 数据库 >Centos7 Mysql 双机热备实现数据库高可用

Centos7 Mysql 双机热备实现数据库高可用

时间:2022-11-13 18:31:15浏览次数:43  
标签:热备 log 数据库 mysql Centos7 master smartmon 服务器 双机

mysql双主热备,也称主主互备,目的是mysql数据库高可用,只支持双机,原因是mysql的复制是一主多从,但一个从服务器只能有一个主服务器。

双机热备的条件是双机mysql版本必须一致。

服务器分别为A(172.16.9.212)、B(172.16.9.213),配置步骤如下:

一、A->B主从备份

1、在主服务器A上创建从服务器备份的用户,IP地址为B的IP

grant replication slave on *.* to 'wuwei'@'172.16.9.213' identified by '123456';

2、打开主服务器A的二进制日志binarylog

vim /etc/my.cnf

新增配置如下:

Centos7 Mysql 双机热备实现数据库高可用_数据库

要同步的数据库为smartmon

配置好保存后需重启mysql

3、如果初态不同,则要同步初态

先锁定 smartmon数据库:

FLUSH TABLES WITH READ LOCK;

Centos7 Mysql 双机热备实现数据库高可用_数据库_02

然后导出smartmon数据:

mysqldump --master-data -uroot -p smartmon > /root/smartmon.sql

解除锁定:

UNLOCK TABLES;

Centos7 Mysql 双机热备实现数据库高可用_数据库_03

4、查看主服务器A的binary日志位置,配置从服务器需要用到:

show master status\G

Centos7 Mysql 双机热备实现数据库高可用_mysql_04

5、打开从服务器B的中继日志relay_log

新增配置如下:

Centos7 Mysql 双机热备实现数据库高可用_mysql_05

设置要备份的数据库为smartmon

保存,重启mysql

6、导入主服务器A的数据库初态

拷贝A生成的smartmon.sql到B服务器,再导入

mysql -uroot -p smartmon < smartmon.sql

然后可以在mysql环境中查看到数据库的数据是一样的

7、在从服务器B上开启主从同步,host为A的IP,用户密码是在主服务器A上设置备份用户,log_file和log_pos是主服务器master的binary看到的信息。

MariaDB [smartmon]> change master to

    -> master_host='172.16.9.212',

    -> master_user='wuwei',

    -> master_password='123456',

    -> master_log_file='mysql-bin.000001',

    -> master_log_pos=2338575;

Centos7 Mysql 双机热备实现数据库高可用_mysql_06

8、在从服务器B上查看slave状态

show slave status\G

Centos7 Mysql 双机热备实现数据库高可用_mysql_07

图中的红框, 两个都是Yes, 说明开启成功。

标签:热备,log,数据库,mysql,Centos7,master,smartmon,服务器,双机
From: https://blog.51cto.com/u_15867943/5847902

相关文章

  • Linux安装.Net Core(CentOS7安装.Net Core 3.1)
    第一步,安装packages-microsoft-prod.rpmsudorpm-Uvhhttps://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm需要先安装微软在Linux下的软件......
  • Centos7把home目录下多余的空间转移到/根目录下
    通过df-h发现,根目录只有32G,而home目录可用的,居然有142G。我现在想分出70G给根目录把你需要挂载的机器的逻辑卷记住(上面的图,左边是逻辑卷,右边是虚拟磁盘)/dev/mapper/cl-h......
  • LINUX CENTOS7 部署步骤 nacos
    0.下载nacos,nacos-server-2.1.2.tar.gzhttps://nacos.io/zh-cn/docs/quick-start.htmlhttps://github.com/alibaba/nacos/tags1.解压tar包tar-xvfnacos-server-2......
  • Centos7下yum安装php7.2
    因为php7.2是通过php命令控制,而php7.3是使用php73命令,所以根据网上某些教程部署应用时,会出错上一篇提供了php7.3和apache2.4的部署和配置,再补一篇php7.2的安装,参考连接中......
  • Centos7下yum安装apache2.4和php7.3
    因不同版本间存在少许差异,先说明环境版本:Centos7.8、Apache2.4、PHP7.3,亲测成功参考安装:https://blog.csdn.net/qq_35145723/article/details/109811593参考配置:https://......
  • CentOS7.x下在后台运行和关闭(Java)项目
    需求在一般情况下,在服务器通过java-jarxxx.jar来运行一个jar包。但是如果退出了控制台,那么这个程序就将被关闭。因此让jar包后台运行十分必要。解决方案运行方式一......
  • LINUX CENTOS7 部署步骤 nginx
    0.检查nginx是否安装rpm-qa|grepnginx1.检查yumlistyumlist|grepnginx2. 安装nginxyum-yinstallnginx3.验证是否安装完成nginx-v4.......
  • Centos7挂载超过2T以上的硬盘
    1.使用fdisk-l查看磁盘信息2.使用parted进行分区parted/dev/nvme0n1输入mklabel输入gpt输入mkpartPartitionname?[]hdfs1#输入一个名称Filesystemtype?[ext2]?xfsSt......
  • centos7安装pm2
    安装nodejs,执行如下命令等待安装完成curl -sL https://rpm.nodesource.com/setup_10.x | sudo bash -sudo yum install nodejs -y安装PM2npm install pm2......
  • CentOS7升级Glibc到超过2.17版本无法启动的解决办法
    CentOS7升级Glibc到超过2.17版本无法启动的解决办法背景今天有同事告知服务器宕机无法启动.提示信息为:[sda]Assumingdrivecache:writethrough后系统没有任何反......