linux mysql主从同步配置

本文使用两台虚拟机进行演示,mysql为5.7。
192.168.211.128为主数据库
192.168.211.129为从数据库

主数据配置文件

修改/etc/my.cnf文件,在[mysqld]下面添加以下信息

[mysqld]
#服务id,主从不能一致
server-id=1
#开启二进制日志
log-bin=mysql-bin
#设置需要同步的数据库
binlog-do-db=testjdbc
#不同步的数据库
#bin-ignore-db=mysql

保存后重启mysql服务

从数据库配置文件

修改/etc/my.cnf文件,在[mysqld]下面添加以下信息

[mysqld]
server-id=2
log-bin=mysql-bin
#同步的数据库
replicate_wild_do_table=testjdbc.%
#屏蔽的数据库
#replicate_wild_ignore_table=mysql.%

保存后重启mysql服务

主数据库配置

  1. 进入mysql服务,创建一个主从同步的账号。
    账号为masterslave,密码为123。账号密码随意设置
GRANT REPLICATION SLAVE ON *.* TO 'masterslave'@'%' IDENTIFIED BY '123';
FLUSH PRIVILEGES;
  1. 查看主数据库状态,记录File和Position信息提供给从数据库使用
SHOW MASTER STATUS;
File Position Binlog_Do_DB Binlog_Ignore_DB Excuted_Gtid_Set
mysql-bin.000001 584 testjdbc

从数据库配置

  1. 进入mysql服务,停止同步
STOP SLAVE;
  1. 修改从库指向主库的信息
CHANGE MASTER TO
-- 主库的ip
MASTER_HOST='192.168.211.128',
MASTER_PORT=3306,
-- 主库配置的同步账号
MASTER_USER='masterslave',
-- 主库配置的同步账号密码
MASTER_PASSWORD='123',
-- 主库中的File信息
MASTER_LOG_FILE='mysql-bin.000001',
-- 主库中的Position信息
MASTER_LOG_POS=584;
  1. 开启同步
START SLAVE;
  1. 查看同步状态
SHOW SLAVE STATUS;

如果Slave_IO_Running和Slave_SQL_Running都为YES,则说明同步成功

测试

修改主库中的信息,查看从库中是否同步修改了


作者博客

你可能感兴趣的:(linux mysql主从同步配置)