欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

mysql实现双机热备

程序员文章站 2022-04-09 20:40:05
...

记录如下:

1、本地现有A、B两台centos7虚拟机

2、要求:两个mysql数据库版本需一致,两个mysql的数据库也必须一致,两台mysql实现双机热备,双主热备,也叫做主主热备,就是为了实现高可用的性能。

实践:

   首先把A当做主库,B当做从库,为了实现A->B主从备份,我们在A主库上创建B从库的用户(IP为B服务器的IP),执行:

grant replication slave on *.* to 'xiaolin'@'192.168.31.114' identified by '123456';

接着,修改A主库的mysql配置文件,

#编辑/etc/my.cnf
vim /etc/my.cnf

#在[mysqld]里面添加如下配置

log_bin = mysql-bin
server-id = 4
binlog_format = mixed
read-only = 0
auto-increment-increment = 2
auto-increment-offset = 1

#该配置可指定某个数据库
#binlog-do-db = test

配置完保存后退出,重启mysql;

接下来,查看A主库的binary日志位置,

#查看主服务器A的binary日志位置

mysql> show master status\G;
*************************** 1. row ***************************
             File: mysql-bin.000175
         Position: 436
     Binlog_Do_DB:
 Binlog_Ignore_DB:
Executed_Gtid_Set:
1 row in set (0.00 sec)

这里查询出来的file 和  Position  ,从库B需要用到

进入B从库,登录mysql,执行:

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

开启主从服务

start slave;

在B从库执行:

show slave status 

查询出结果这里均为yes,那么,主从搭建成功!

mysql实现双机热备

这个时候我在A主库里面去新建表、新增数据、新增用户,授权,然后到B从库都是成功实时备份!

那么,既然是双机热备,那么就不应该只是A主B从,还要有B主A从,把B当做主库,A当做从库,再配置一遍即可!

配置完成!

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