前阵子因业务需要,需要使用两台电脑配置Mysql主从同步,经过一番折腾,成功配置完成,在此记录一下主从库的配置过程。
配置步骤:
主从同步可使用于数据备份、读写分离、根据业务拆分访问从库等,其中,从数据库是主数据库的备份,因此要求从数据库的数据库中需要同步的表结构是跟主库的一样
my.ini文件是在Mysql的安装目录下,与bin目录同级(如我的Mysql安装路径为:E:\soft\MySQL\MySQL Server 5.7)
server_id = 1
log-bin = mysql-bin
binlog-do-db = master_slave
binlog-ignore-db = mysql
binlog-ignore-db = sys
binlog-ignore-db = information_schema
binlog-ignore-db = performance_schema
binlog-ignore-db = mydb_local2
server_id = 3
binlog-do-db = master_slave
binlog-ignore-db = mysql
binlog-ignore-db = sakila
binlog-ignore-db = information_schema
binlog-ignore-db = performance_schem
binlog-ignore-db = test
binlog-ignore-db = world
binlog-ignore-db = my_yonghui
注意:binlog-ignore-db 是指你本地有多余的不用进行主从同步的数据库(ignore即忽略的意思),而binlog-do-db是指需要同步的数据库,我这里主库与从库的数据库名都起名叫master_slave而已
我的电脑直接重启不行 ,必须手动关了再开,可以尝试一下直接重启,如果不行,先关再开启
stop slave;
接着输入:
change master to
master_host=’10.73.36.xxx’,
master_user=’root’,
master_password=’root’,
master_log_file=’mysql-bin.000004’,
master_log_pos=1595;
其中,master_host 填入主库的电脑ip,master_user 填主库的mysql登录用户,master_password填主库密码,master_log_file 和 master_log_pos则需要主库查询出来
主库输入命令即可查看 master_log_file 和 master_log_pos:
show slave status \G;
start slave;
show slave status \G;
如果Slave_IO_Running与Slave_SQL_Running都是Yes,则表示配置成功