Jasper Ji

开口不在舌头上

0%

在CentOS 8上Mysql 8.0的主从配置实践

主要试了下基于二进制日志文件的方法

主库设置

主要的坑,一般教程上写的是编辑/etc/my.cnf。安装的Mysql 8的配置略微有些问题,my.cnf文件导入的是另一配置!includedir /etc/my.cnf.d,所以以下配置我是写在了/etc/my.cnf.d/mysql-server.cnf里面。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
###主从数据库配置核心部分
# 设置同步的binary log二进制日志文件名前缀,默认为binlog
log-bin=mysql-bin
# 服务器唯一id,默认为1 主数据库和从数据库的server-id不能重复
server-id=1

###可选配置
# 需要主从复制的数据库
binlog-do-db=test
# 复制过滤:也就是指定哪个数据库不用同步(mysql库一般不同步)
binlog-ignore-db=mysql
# 为每个session分配的内存,在事务过程中用来存储二进制日志的缓存
binlog_cache_size=1M
# 主从复制的格式(mixed,statement,row,默认格式是statement。建议是设置为row,主从复制时数据更加能够统一)
binlog_format=row
# 设置二进制日志自动删除/过期的天数,避免占用磁盘空间。默认值为0,表示不自动删除。
expire_logs_days=7
# 跳过主从复制中遇到的所有错误或指定类型的错误,避免slave端复制中断。
# 如:1062错误是指一些主键重复,1032错误是因为主从数据库数据不一致
slave_skip_errors=1062