2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > Linux基础学习八:mysql主从复制原理以及详细搭建步骤

Linux基础学习八:mysql主从复制原理以及详细搭建步骤

时间:2022-07-19 15:22:19

相关推荐

Linux基础学习八:mysql主从复制原理以及详细搭建步骤

MySQL的主从复制

MySQL的主从复制,指的是可以创建多台和主数据库完全一样的数据库环境(从数据库),对主数据库的写操作(增、删、改)会自动同步到子数据库中。

作用:

从数据库作作为冷备机,进行日常备份,确保数据安全

从数据库作作为热备机,一旦主机宕机,可以切换到从数据库提供服务,提高系统可用性。

可以实现数据库的读写分离,提高系统的并发性。

搭建步骤:

克隆3台(至少2台)安装过MySQL的虚拟机

在虚拟机中创建相同的数据库,例如:baizhi一定要保证机器中baizhi数据库状态是完全一致的。

配置主机

编辑/etc/f文件,明确主机的身份

1.开启日志功

去掉12行的#注释

原配置:# log_bin

修改后:log_bin

2.设置要复制的数据库wbc和不复制的数据库mysql

在log_bin下方添加如下配置:

binlog-do-db=wbc

binlog-ignore-db=mysql

3.添加server_id,值要唯一,一般写ip的最后一段

同样在log_bin下方添加配置:

server-id=141

4.重启MySQL

systemctl restart mysqld

5. 登录MySQL,查看状态

4. 添加如下配置:

配置监听哪个主机

1.编辑/etc/f文件

添加如下配置:

server-id=从库的唯一标识值(从库ip最后一段)

删除f文件

rm -f /var/lib/mysql/f

重启MySQL

systemctl restart mysqld

登录MySQL,配置从机

停掉slavemysql> stop slave;​配置主机信息:change master to master_host='主机ip地址',master_user='主机用户名',master_password='主机密码',master_log_file='主机日志文件名',master_log_pos=日志文件的位置;​mysql>change master to master_host='192.168.84.135',master_user='root',master_password='root',master_log_file='localhost-bin.000001',master_log_pos=154;​启动slavemysql>start slave;​查看从机状态mysql>show slave status \G;

如果配置出现问题,show slave status中会有异常信息。同上述步骤配置第2台从机。

注意:如果配置出错,可以查看位于/var/log/mysqld.log日志文件的错误信息

主从复制的原理

复制原理实现细节

master在执行更改操作(增、删、改)后,会将操作记录串行地写入到binlog文件中。

slave的IO线程接收到主库的更新记录后,将记录保存到relay log中。

slave的SQL线程读取relay log中的更新语句并在从库执行。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。