环境:
mysql版本都是5.7
主(Master) ubutnu18.04:192.168.199.254
从(Slave) ubutnu18.04:192.168.199.172
两个mysql要数据相同才可以开启主从,所以这里新建一个新的库来处理主从 testzc
Master(192.168.199.254 )的配置
sudo vim /etc/mysql/conf.d/mysql.cnf
[mysqld]
server_id=254
log_bin=mysql-bin
重启mysql 并且进入mysql查看主库信息
show master status;
可以得到
master_log_file = mysql-bin.000001
master_log_pos = 2584
Slave(192.168.199.172 )的配置
sudo vim /etc/mysql/conf.d/mysql.cnf
[mysqld]
server-id=172
log_bin=mysql-bin
replicate-do-db=testzc
# replicate-ignore-db=mysql 忽略的数据库
# master-connect-retry=60 如果从服务器发现主服务器断掉,重新连接的时间差(秒)
# replicate-do-db=testzc //同步的数据库(需要备份的数据库名),不写本行 表示 同步所有数据库 可以加多行就是多个
# replicate-wild-do-table = 数据库名字.表名字 // 所要同步的数据库的单个表,可以加多行就是多个
重启一下 mysql 并且进入从服务器的mysql里面
stop slave; #停止从
change master to master_host='192.168.199.254',master_user='root',master_password='root',master_log_file='mysql-bin.000001', master_log_pos=2584;
start slave; #开启从
show slave status\G;
只要其中的
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
代表成功
可以在主服务器中测试一下数据 看看从会不会跟着复制