前言
嘿,我前面还有一篇master的知识呢,请点击我来阅读😄
以及前面还有一篇slave的知识呢,请点击我来阅读😄
11. 相关补充
11.1 主从复制的模式(三种)
binlog
三种模式
STATEMENT
模式每修改一条sql就会记录到binlog中。
优点: 仅仅记录了SQL,不会记录执行结果,减少了binlog日志量,节约了IO,提高性能
缺点: 会出现结果不一致情况。如select now()ROW
模式每条记录的修改都会被记录。
优点: 不存在数据不一致情况
缺点: 一旦修改alter table会出现binlog暴涨。MIXED
模式以上两种模式混合使用。一般的复制使用
STATEMENT
模式保存binlog。
11.2 采用MIXED
模式
# 修改master的配置文件
vim /usr/local/docker/mysql/matser01/conf/mysql.cnf
##输入下面内容
[mysqld]
server-id = 1
log-bin=mysql-bin
sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO"
binlog_format=MIXED #设置模式为 MIXED
docker-composer restart
重新启动master数据库