mysql设置双1保证数据库一致性
发表于:2024-09-25 作者:千家信息网编辑
千家信息网最后更新 2024年09月25日,在MySQL中,一次事务提交后,需要写undo、写redo、写binlog,写数据文件等等。在这个过程中,可能在某个步骤发生crash,就有可能导致主从数据的不一致。为了避免这种情况,我们需要调整主从
千家信息网最后更新 2024年09月25日mysql设置双1保证数据库一致性
在MySQL中,一次事务提交后,需要写undo、写redo、写binlog,写数据文件等等。在这个过程中,可能在某个步骤发生crash,就有可能导致主从数据的不一致。为了避免这种情况,我们需要调整主从上面相关选项配置,确保即便发生crash了,也不能发生主从复制的数据丢失。
1. 在master上修改配置
innodb_flush_log_at_trx_commit = 1sync_binlog = 1
上述两个选项的作用是:保证每次事务提交后,都能实时刷新到磁盘中,尤其是确保每次事务对应的binlog都能及时刷新到磁盘中,只要有了binlog,InnoDB就有办法做数据恢复,不至于导致主从复制的数据丢失。
2. 在slave上修改配置
master_info_repository = "TABLE"relay_log_info_repository = "TABLE"relay_log_recovery = 1
上述前两个选项的作用是:确保在slave上和复制相关的元数据表也采用InnoDB引擎,受到InnoDB事务安全的保护,而后一个选项的作用是开启relay log自动修复机制,发生crash时,会自动判断哪些relay log需要重新从master上抓取回来再次应用,以此避免部分数据丢失的可能性。
通过上面几个选项的调整,就可以确保主从复制数据不会发生丢失了。但是,这并不能保证主从数据的绝对一致性,因为,有可能设置了ignore\do\rewrite等replication规则,或者某些SQL本身存在不确定因素,或者人为在slave上修改数据,最终导致主从数据不一致。这种情况下,可以采用pt-table-checksum 和 pt-table-sync 工具来进行数据的校验和修复。
http://edu.51cto.com/center/course/lesson/index?id=184082
数据
主从
事务
一致
作用
配置
保证
两个
情况
磁盘
调整
一致性
安全
再次
办法
可能性
因素
实时
工具
引擎
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
杭州巴豆网络技术
互联网深海科技
300m宽带服务器做什么网站
智胜网络技术怎么样
软件开发项目进度控制表
软件开发流程有那五大步骤
重庆本地软件开发公司
编写航班信息管理系统数据库
时间竞争 网络安全 ctf
数据库中约束的创建
服务器造假
抢红包服务器
国家推行网络安全
靠谱的纸箱吸塑一体软件开发
在数据库的设计过程中最长
网络安全态势报告
永兴安卓软件开发薪资
软件开发里的BA
互联网家电科技屋
rust怎么在以前的服务器玩
群硕软件开发 上海 有限公司
数据库监控主机安装
三级网络技术上机几题
电脑显示升级数据库异常
服务器造假
微信小程序查询数据库中的数据
中化能源互联网科技面试
员工部门数据库设计
计算机网络安全管理的论文
ar软件开发基础知识