mysql主从复制

本文详细介绍了如何在MySQL中配置主从复制,包括在master和slave端修改my.cnf,重启MySQL服务,以及在MySQL命令行中进行权限设置、状态查询等关键步骤。同时,文章还提供了数据量过大时的处理策略,以及遇到常见问题的解决方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

mysql主从复制

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

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

https://blog.youkuaiyun.com/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.youkuaiyun.com/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掉;

 

转载于:https://www.cnblogs.com/stono/p/9756461.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值