音乐吧 - www.52290.com

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2233|回复: 0

mysql5.7主从同步配置

[复制链接]

1056

主题

1090

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

音乐币
101
贡献
537
金钱
4385
威望
2120
相册
1

推广达人宣传达人突出贡献荣誉管理最佳新人活跃会员

QQ
发表于 2020-11-3 13:31:47 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
当网站并发量大时,最先扛不住的可能是数据库了。所以需要多台服务器进行分担压力。这时会用到mysql主从同步,把mysql服务器数据分到多台服务器中。

mysql主从同步.png

mysql主从同步.png

一、主从同步的优点
    1、做数据的热备,作为后备数据库,主数据库服务器故障后,可切换到从数据库继续工作,避免数据丢失。
    2、架构的扩展。业务量越来越大,I/O访问频率过高,单机无法满足,此时做多库的存储,降低磁盘I/O访问的频率,提高单个机器的I/O性能。
    3、读写分离,使数据库能支撑更大的并发。在报表中尤其重要。由于部分报表sql语句非常的慢,导致锁表,影响前台服务。如果前台使用master,报表使用slave,那么报表sql将不会造成前台锁,保证了前台速度。
二、mysql5.7的安装
http://zixuephp.net/article-261.html

三、主服务器配置
    3.1 编译mysql配置文件,开启bin-log日志,并重启mysqld让配置文件生效
vim /etc/my.cnf#[mysqld]中增加代码server-id=1log_bin=mysql-bin#不同步数据库  binlog-ignore-db=mysqlbinlog-ignore-db=information_schemabinlog-ignore-db=performance_schema#只仅同步数据库binlog-do-db=zixuephp-db#mysql复制模式,三种:SBR(基于sql语句复制),RBR(基于行的复制),MBR(混合模式复制)binlog_format=MIXED #混合模式复制,可靠性更高systemctl restart mysqld

mysql bin log.png

mysql bin log.png

    3.2从主服务器中创建从库用户
mysql -uroot -p123456grant replication slave on *.* to 'slave'@'%' identified by '123456';flush  privileges;    3.3锁住主库表
flush tables with read lock;    3.4查看主库状态
        这里的File和Position会在从库中用到

show master status \G

show master status.png

show master status.png

    3.5备份所有数据
        备份主库中的所有数据到从库中,保持当前主库和从库数据一致
#主库导出数据mysqldump -uroot -p123456 >/root/back.sql#从库导入来自主库数据source back.sql    3.6解锁主库表
unlock tables;四、从库配置
    4.1配置从库my.cnf配置文件
vim /etc/my.cnf#[mysqld]中增加代码server-id=2log_bin=mysql-binbinlog_format=MIXED

slave configure.png

slave configure.png

systemctl restart mysqld    4.2从库设置slave复制主库数据
        master_log_file文件尾主库中 show master status 中的File,master_log_post为主库中Postion的值

change master to master_host='主mysql服务器ip',master_user='slave',master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=19416434;    4.3启动从库复制
start slave;    4.4查看从库是否同步上主库
        当Slave_IO_Running: Yes  Slave_SQL_Running: Yes 都为yes同步成功

show slave status;

show slave status.png

show slave status.png

    4.5在主库中查看从库是否连接到
show processlist \G配置完成。
    4.6其他调试语句
#查看错误show warnning;#查看主库状态show master status \G#查看从库状态show slave status \G#重置主记录信息reset master;#重置从记录信息reset slave;#停止始从stop slave;#开始从start slave;#清空从所有连接、信息记录reset slave all;#删除从change master to master_host=' ';    4.7删除主从同步
#从库stop slave;reset slave all;show slave status \G#清除从库配置文件的配置#主库reset master;#清除主库配置文件的配置#清除mysql.user从库账号show master status \G
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|手机版|Archiver|版权声明| 音乐吧 52290 ( 桂ICP备2021006182号 )

GMT+8, 2024-5-1 06:33 , Processed in 0.051565 second(s), 28 queries .

Powered by Discuz! X3.4

© 2001-2023 07726.Com Inc.

快速回复 返回顶部 返回列表