vlambda博客
学习文章列表

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=2log-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-- 主库的ipMASTER_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,则说明同步成功

测试

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