mysql主从复制

Posted stono

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql主从复制相关的知识,希望对你有一定的参考价值。

mysql主从复制

https://www.cnblogs.com/superfat/p/5267449.html

https://www.cnblogs.com/phpstudy2015-6/p/6485819.html

https://blog.csdn.net/deeplearnings/article/details/78398526

# 在服务器的master/slave端进行my.cnf修改
vi /etc/my.cnf
log-bin=mysql-bin
binlog_format=mixed
server-id=101 # 设置为IP地址最后一位
# 保存之后,重启mysql
mysqladmin -uroot -proot shutdown
mysqld_safe --user=mysql &
# 主服务器修改
mysql -uroot -proot
>grant replication slave on *.* to \'slave\'@\'%\' identified by \'slave\';
# 这样写貌似有问题哦,从服务器连的时候出现Slave_IO_Running: No >grant all privileges on *.* to \'slave\'@\'%\' identified by \'slave\';
>flush privileges;
# 如果主库有业务操作,先用读锁 锁定一下,获取一个一致性快照
>flush tables with read lock;
>show mater status; # 记录File\\Position结果;每次操作都会有变化; File | Position mysql-bin.000002 | 123
> unlock tables; # 解除读锁 # 从服务器修改 mysql -uroot -proot >stop slave; >change master to ->master_host="192.168.0.111", ->master_user="slave", ->master_password="slave", ->master_log_file="mysql-bin.000002", ->master_log_pos=123; >start slave; >show slave status \\G

测试:

1,主库 建库建表插入数据;从库都有;
2,从库 stop slave; 主库 插入数据,从库没有数据;
3,从库start slave; 主库插入数据,从库 全部同步过来;
4,从库stop slave; 主库插入数据,从库没有数据;从库start slave,数据就过来了;

数据量太大,处理方式:https://blog.csdn.net/andyzhaojianhui/article/details/60133872

1, 在/etc/my.cnf中[mysqld]部分写上expire_logs_days=1
2, 在主库中 mysql>purge master logs to \'mysql-bin.000888\'; 888日志不会删
3, 慎用主库 mysql>reset master; 可能会导致从库复制失效;
4, 从库失效处理:flush tables with read lock;
unlock tables;

或者使用脚本自动删除

for name in `ls /data/mysql|grep mysql.bin|grep -v index`
do
  echo purge master logs to \\\'${name}\\\' > /data/mysql/purgesql
  mysql -uroot -proot </data/mysql/purgesql 
done

使用 mysql -uroot -proot -e "show databases" 可以执行sql语句

密码中如果有特殊字符,使用单引号把密码包含起来,或者使用\\进行转义;例如:-p\'$oot\' -p\\$oot 

如果发现slave库中存在 server-relay-bin.000001,是数据同步出错,
可以stop slave; reset slave;reset master 重新进行从库关联;
注意观察 show slave status; 对于出错的table需要truncate掉;

 

以上是关于mysql主从复制的主要内容,如果未能解决你的问题,请参考以下文章

MySQL 主从复制与读写分离(原理深刻,过程详细,值得一看)

MySQL主从复制与读写分离

MySQL主从复制及读写分离实际部署与验证

MySQL主从复制及读写分离实际部署与验证

mysql实现主从复制/主从同步

MySQL主从复制以及读写分离(❤❤❤❤含理论和实验❤❤❤❤大家中秋快乐!㊗)