主库配置修改
修改my.cnf
#开启binglog功能log_bin=mysql-binserver-id=1#表示执行写入操作与磁盘同步sync-binlog=1#执行哪些库需要同步,哪些不需要同步binlog-ignore-db=performance_schemabinlog-ignore-db=information_schemabinlog-ignore-db=sysbinlog-do-db=test
修改后重启MySQL服务:systemctl restart mysqld
授权操作
指定哪些库可以进行复制
root账号授权
grant replication slave on . to ‘root’@’%’ identified by ‘root’; grant all privileges on . to ‘root’@’%’ identified by ‘root’; //刷新 flush privileges;
查看状态
show master status;
从库配置修改
修改my.cnf
server-id=11#relay_log文件名字relay_log=mysql-relay-bin#从库权限设置read_only=1
然后重启服务器 systemctl restart mysqld;
然后登录数据库查看从库状态
show slave status;
指定主库
change master to master_host=’192.168.209.140’,master_port=3306,master_user=’root’,master_password=’root’,master_log_file=’mysql-bin.000001’,master_log_pos=853;
开启从库
start slave;
查看信息
show slave status \G;
主从复制缺点
主从复制主要是从主库的某个时间点开始复制,不能复制以前的数据,及时有办法解决,如果数据太多,复制也是很需要时间的
解决方法:通过 mysqlDump命令来把历史数据导出来,然后再导入到从库中**
