搭建MySQL集群--主从复制

20 篇文章 0 订阅
3 篇文章 0 订阅
本文详细介绍了如何在两台Linux服务器上配置MySQL的主从复制,包括主服务器的二进制日志设置、从服务器的配置以及主从同步的检查。同时,针对主从复制过程中可能出现的问题,如数据不一致,提出了重新同步的解决方案。
摘要由CSDN通过智能技术生成

前期准备:两台Linux,一主一从,具体Linux安装MySQL操作步骤如上

1、主从复制简介

#主从复制的原理(核心:二进制日志)
1、master将数据库改变的数据记录在本地的二进制日志(binary-log)中
2、通过I/O线程将master的二进制日志(binary-log)拷贝到slave的中继日志(relay-log)中
3、通过SQL线程将将slave的中继日志(relay-log)读取到本地的数据库中
#主从复制的作用
1、主数据库出现问题,可以切换到从数据库
2、可以进行数据库层面的读写分离:在主数据库写入数据,从从数据库读取数据,降低I/O访问率
3、可以在从数据库上进行日常备份

2、配置主服务器

#配置数据库(Windows的配置文件是my.ini)
vi /etc/my.cnf
#在[mysqld]下添加如下内容:
# 启用二进制日志
log-bin=master-bin
# 服务器唯一ID,一般取IP地址最后一段
server-id=215
#1同步忽略的数据库(根据实际情况)
binlog-ignore-db=mysql
#(可选)或者 同步数据库的名称(根据实际情况)
binlog-do-db=test
​
#重启数据库
systemctl restart mysqld.service
#主服务器必须开放防火墙
firewall-cmd --zone=public --add-port=3306/tcp --permanent
#重载防火墙
firewall-cmd --reload
#查看防火墙已开放端口
firewall-cmd --list-all
#连接数据库查看
mysql -uroot -p
#查看是否配置成功
mysql> show master status;
#主机给从机授备份权限slave(从机ip可以是具体ip,也可以是固定的网段,也可以是任意%)
GRANT REPLICATION SLAVE ON *.* TO '从机MySQL用户名'@'从机ip' identified by '从机MySQL密码';
mysql> GRANT REPLICATION SLAVE ON *.* TO 'test'@'192.168.80.%' identified by '123';
#刷新权限
mysql> flush privileges;

配置成功后(成功会在安装目录下生成日志文件:master-bin.000001和master-bin.index)

3、配置从服务器

#配置数据库(Windows的配置文件是my.ini)
vi /etc/my.cnf
#在[mysqld]下添加如下内容:
# 启用二进制日志
log-bin=slave-bin
# 服务器唯一ID,一般取IP地址最后一段
server-id=221
​
#重启数据库
systemctl restart mysqld.service
#连接数据库查看
mysql -uroot -p
#选择主服务器:master_user为同步操作的数据库账户,master_log_file为:show master status中的File值,master_log_pos为:position的值
mysql> change master to master_host='192.168.80.215',master_user='root',master_password='123',master_port=3306,master_log_file='master-bin.000001',master_log_pos=843;
#开启主从同步
mysql> start slave;
#查看从服务器状态(Slave_IO_Running和Slave_SQL_Running都为yes,则开启为成功)
mysql> show slave status \G
​
#注意:当出现错误时,数据库查看日志,默认日志路径:/var/log/mysqld.log
#停止主从同步
mysql> stop slave;

#问题:
Last_SQL_Error: Error 'Unknown table 'test.user'' on query. Default database: 'test'. Query: 'DROP TABLE `user` /* generated by server */'
#解决:
由于主从数据不一致,需要把主从的数据库全部删除,重新开启主从同步
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值