所谓的双一就是指:

sync_binlog=1;

innodb_flush_log_at_trx_commit=1

innodb_flush_log_at_trx_commit和sync_binlog这两个参数是控制MySQL磁盘写入策略以及数据安全性的关键参数。

innodb_flush_log_at_trx_commit表示log buffer写入log file以及刷新到磁盘的过程,

sync_binlog表示事务写入binary log并使用fdatasync()函数同步到磁盘的过程。

1、对于innodb_flush_log_at_trx_commit来说

取值为0:log buffer每秒写入日志文件log file并刷新flush到磁盘。这种情况下,MySQL的日志刷写操作和事务提交操作没有关系。因此MySQL的性能是最好的时刻。不过不安全

取值为1:每次事务提交时,log buffer会被写入到日志文件并且还要刷写到磁盘上。由于每次事务都要提交到I/O设备,因此会慢一点,不过是最安全的。

取值为2:0和1的中间效果,即每次的事务提交会写入log buffer,而刷写到磁盘则是一秒进行一次。性能属于一般。

2、对于sync_binlog来说:

取值为0:MySQL自己不主动同步,依赖操作系统本身不定期把文件内容刷新到磁盘。性能最佳

取值为1:每次事务提交后将binlog_cache中的数据强制写入磁盘bin log日志中,是最慢的,但是最安全

取值 >1:当进行n次事务提交后,MySQL将binlog_cache中的数据强制写入磁盘中。

当两个参数都设为1,这适用于那些数据安全要求比较高的场合,同时要求磁盘等也比较好才行。

对于重做日志redo log和二进制bin log的区别是什么,我们有必要说一下:

1)二进制日志会记录所有与mysql有关的日志记录,包括InnoDB等其他存储引擎的日志,而InnoDB存储引擎的重做日志只记录有关其本身的事务日志,2)记录的内容不容,不管你将二进制日志文件记录的格式设为哪一种,其记录的都是关于一个事务的具体操作内容,而InnoDB存储引擎的重做日志文件记录的关于每个页的更改的物理情况;3)写入的时间也不同,二进制日志文件是在事务提交前进行记录的,而在事务进行的过程中,不断有重做日志条目被写入重做日志文件中。

mysql最高安全级别双一_MySQL核心之双一原则相关推荐

  1. mysql索引是什么 优点和缺点_MySQL索引优缺点、使用原则及种类介绍

    一.索引简介 1.索引简介 索引(Index)是帮助MySQL高效获取数据的数据结构. 在MySQL中,索引属于存储引擎级别的概念,不同存储引擎对索引的实现方式是不同的.MyISAM和InnoDB存储 ...

  2. mysql sync es 异步双写_mysql数据同步es方案思考

    在线QQ客服:1922638 专业的SQL Server.MySQL数据库同步软件 大体计划 1.双写 矫捷长处:简略. 错误谬误: a.停业代码耦合严重. b.如何保证双写成功 c.同步双写会增加响 ...

  3. mysql命令导入导出数据_mysql命令行导入和导出数据

    MySQL中导出CSV格式数据的SQL语句样本如下: select * from test_info into outfile '/tmp/test.csv' fields terminated by ...

  4. linux mysql 实战_Linux平台MySQL多实例项目实施_MySQL数据库基础与项目实战06

    Linux平台MySQL多实例项目实施_MySQL数据库基础与项目实战06 视频教程学习地址 Oracle/MySQL数据库学习专用QQ群:336282998.189070296 学完风哥本课程能熟悉 ...

  5. mysql的char在java中表示为_Java学习篇之-Mysql中varchar门类总结_mysql

    java学习篇之---mysql中varchar类型总结 Mysql中varchar类型总结 今天新做一个项目,需要自己进行数据库设计,发现自己对varchar的用法还不是很熟悉,所以查阅资料总结若下 ...

  6. datastage mysql wire_DataStage 九、数据交换到MySQL以及乱码有关问题_mysql

    DataStage 九.数据交换到mysql以及乱码问题 DataStage序列文章 DataStage 一.安装 DataStage 二.InfoSphere Information Server进 ...

  7. mysql怎么建组合索引_mysql索引及建立组合索引原则

    两个重要概念 1.对于mysql来说,一条sql中,一个表无论其蕴含的索引有多少,但是有且只用一条. 2.对于多列索引来说(a,b,c)其相当于3个索引(a),(a,b),(a,b,c)3个索引,又由 ...

  8. mysql中组合索引创建的原则是什么意思_mysql数据库建立组合索引原则

    现实中,mysql可以根据业务需要建立组合索引,由于mysql使用B-Tree格式索引,可以直接定位记录,无需扫描.mysql建立多列索引有最左前缀的原则,即最左优先,如: 如果有一个2列的索引(co ...

  9. 信息机房双核与双路服务器的区别,双路和双核的区别 - 卡饭网

    关于CPU单核单路/双路和双核双路的区别 关于CPU单核单路/双路和双核双路的区别 双核处理器是指在一个处理器上集成两个运算核心,从而提高计算能力."双核"的概念最早是由IBM.H ...

最新文章

  1. 携程二季度净利润降55% 促销被指“玩烟幕弹”
  2. 爬虫豆瓣top250项目-开发文档
  3. file_get_contents设置响应时间timeout的方法
  4. 服务器上flash不显示动画,win10电脑在线预览不能加载flash
  5. redhat yum 安装 mysql_RedHat/CentOS 为yum安装remi源 | 学步园
  6. 【学习笔记】吴恩达机器学习 WEEK1
  7. Linux性能分析工具与图形化方法
  8. python中print又可将数据写入文件_Python第五课-将写入文件的列表格式化
  9. java 枚举类型知识点记录
  10. es 使用ik停词_ES使用IK分词器
  11. load data infile 补充
  12. BEGINNING SHAREPOINT#174; 2013 DEVELOPMENT 第9章节--client对象模型和REST APIs概览 client对象模型(CSOM)基础...
  13. B2B电子邮件营销:下一个突破口在哪?
  14. 萤石摄像头实现web端监控预览以及录像回放
  15. 表扩展字段2种实施方案研究
  16. Android 面试之20个常见 APP 架构常见面试题~
  17. 了解原型设计工具:墨刀
  18. php论坛mybb,MyBB
  19. MySQL中DELETE操作磁盘空间不会减少的原因
  20. 强大的密码破解工具:hashcat简介与用法介绍与实例

热门文章

  1. 音视频技术开发周刊 | 156
  2. Linux的内存理解
  3. 你一定听过这些不太标准的技术圈发音...
  4. 云服务能力评估“国标”出炉,腾讯云TStack首批通过私有云“一级能力”认证
  5. 分支管理---Feature分支
  6. GO tcp server demo
  7. android和ios HybridApp的js交互
  8. Flink 在小红书推荐系统中的应用
  9. Scala _11SparkWordCountscala语言java语言
  10. 基于XML及注解配置方式实现AOP及aspectJ表达式