那年那日那朵花

".......(o´ω`o)......"

数据库主从同步

2018-09-03 15:11 linux mysql

新申请了一台ECS实例,所以今天打算做个数据库主从。
实现方式很简单,现在把步骤记录下来。

1.将主库的数据导入到备库中

create database blog character set utf8 collate utf8_bin;#先建库再导入
mysql -uroot blog <blogbak2018-09-03.sql

2.修改主库的配置文件,创建用户赋予主从读取binlog的权限,然后重启。

在my.cnf的配置文件中添加

log-bin=mysql-bin
server-id=53 #主从的id需要不一样

执行sql

create user repl;
GRANT REPLICATION SLAVE ON *.* TO 'XXXX'@'172.18.%.%' IDENTIFIED BY 'XXXX';
flush privileges;

重启

systemctl restart mysql.service
show master status; #查看主信息

3.修改从库的配置文件,并配置主库信息,重启并启动主从生效

在my.cnf的配置文件中添加

log-bin=mysql-bin
server-id=11

重启

systemctl  restart mysql.service

执行整段语句

change master to master_host='172.18.XXX.XXX',
master_port=3306,
master_user='XXXX',
master_password='XXXX', 
master_log_file='mysql-bin.000001',
master_log_pos=0;

注意 : master_log_file与master_log_pos可以根据在主库上执行show master status; 查看得出

开启主从

start slave;
show slave status\G;

一下为几个有用的命令

show binary logs;
show binlog events;
show binlog events in 'some-binlog';
show processlist;

Cloudhu 个人随笔|built by django|

沪ICP备16019452号-1