mysql主从复制重做_MySQL主从复制配置

MySQL主从复制用于读写分离,主库负责写,从库负责读。这样无疑会让数据库提供更高的并发性能。

配置主从复制后,主库记录二进制日志到本地,从库读取主库的二进制文件并保存到本地的中继日志文件,然后重做日志达到同步数据的结果。

120743_tfJT_258106.png

主库配置

1、创建复制用户

从库通过此用户身份在主库拉二进制日志。

GRANT REPLICATION SLAVE,REPLICATION CLIENT ON *.* TO slave_1@'%' IDENTIFIED BY 'gechong';

2、主库配置

修改my.cnf

server-id=1   #必须有 而且必须唯一

log-bin=/var/log/mysql/mysql_bin.log  #二进制文件的路径

binlog-do-db=employees   #需要记录二进制日志的库

binlog-ignore-db=mysql,information_schema  #忽略的库

sync_binlog=1    #即时记录,防止事务未提交而丢失二进制日志

4f4093fd90cdb37e3907b07ce7cda11d.png

备库配置

1、备库配置

修改my.cnf文件

server-id=2

log-bin=/var/log/mysql/mysql_bin.log

log-slave-updates=1

read-only=1   #阻止任何没有特权权限的线程修改数据,避免与主库的数据冲突

replicate-do-db=employees

replicate-ignore-db=mysql,information_schema

2、启动复制

在mysql中运行

stop slave; --首先关闭

change master to master_host='IP',

master_user='slave_1',

master_password='123456',

master_log_file='mysql_bin.000006',

master_log_pos=106;

start slave; --启动

如果slave_io_running和slave_sql_running都是yes,配置成功。

23c21b914a449a36ccb41f3512c94496.png

注意事项

关于mysql主从配置的简单介绍到此。除此之外,关于这个主题还有不少值得注意的关键点。

复制的方式

复制的方式分为基于行的 和基于语句的。

基于语句的方式(5.0以及之前的版本支持),因为从库重做语句有时间差,所以对于时间戳会有误差。

基于行的方式会将实际数据记录到二进制文件,克服了以上类似的弊端。

主库和从库数据冲突

从库主要是用作读取数据,与主库同步。如果随意修改从库,很可能造成数据的冲突和不一致。

在从库中配置 read_only=1 能有效避免。

数据库崩溃造成事件丢失

sync_binlog=1

该配置作用是,mysql每次提交事务前会将二进制日志同步到磁盘,防止数据库崩溃造成丢失。

总结

除了一主一从之外,还能允许一主多从的结构。这样无疑对与少量写大量读的系统十分有用。

1)灾难恢复,将一台从服务器部署到远端,能防火防震防盗防水灾。

faf500e026a9be3464f5acb162368f0d.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值