本文由云+社区发表 1.概述 binlog是Mysql sever层维护的一种二进制日志,与innodb引擎中的redo/undo log是完全不同的日志;其主要是用来记录对mysql数据更新或潜在发生更新的SQL语句,并以”事务”的形式保存在磁盘中; 作用主要有: [x] 复制:MySQL Rep ...
分类:
数据库 时间:
2019-01-10 13:08:51
阅读次数:
157
MySQL的wal机制,得到的结论是:只要redo log和binlog 持久化到磁盘,就能确保mysql异常重新启动后,数据是可以恢复的。 binlog的写入机制 其实,binlog的写入逻辑比较简单:事务执行过程中,先把日志写到binlog cache,事务提交的时候,再把binlog cach ...
分类:
数据库 时间:
2019-01-08 17:13:54
阅读次数:
241
Ⅰ、事务的实现 这里我们先抛出答案,通过答案再展开分析 特性实现 A(原子性) redo C(一致性) undo I(隔离性) lock D(持久性) redo/undo 本节针对redo展开分析 Ⅱ、redo详解 2.1 redo log buffer redo就是我们常说的重做日志,用来实现持久 ...
分类:
数据库 时间:
2019-01-08 01:01:46
阅读次数:
199
Ⅰ、binlog与redo的一致性(原子) 由内部分布式事务保证 我们先来了解下,当一个commit敲下后,内部会发生什么? 步骤操作 step1 InnoDB做prepare redo log(fsync) step2 Sever层写binlog(fsync) step3 InnoDB层commi ...
分类:
数据库 时间:
2019-01-08 00:59:27
阅读次数:
233
1.REDO LOG 是用来做数据库crash recovery的,是保证数据库数据正确性、完整性及持久性的重要机制之一。在数据库操作中,它保存了对InnoDB表中数据的修改记录,所以也叫日志文件。 2.日志文件内部也是按照大小相等的页面切割,页面大小为512个字节(回顾下数据页是多大? )。考虑到 ...
分类:
数据库 时间:
2019-01-08 00:58:49
阅读次数:
208
一:binlog写入机制。 先write ,把日志写入文件系统的的page cache ,然后fsync 将数据持久化到磁盘的操作。 binlog是每个线程一个binlogCache,binlogCache中包含tmpfile和memery. 二:redo log 写入机制 首先日志写道redolo ...
分类:
数据库 时间:
2019-01-05 13:26:18
阅读次数:
302
IO流中对象很多,解决问题(处理设备上的数据时)到底该用哪个对象呢? 把IO流进行了规律的总结(四个明确): 明确一:要操作的数据是数据源还是数据目的。 源:InputStream Reader 目的:OutputStream Writer 先根据需求明确要读,还是要写。 明确二:要操作的数据是字节 ...
分类:
其他好文 时间:
2019-01-04 21:25:57
阅读次数:
148
rpm:-i安装-q查询:a所有包f指定文件由那个包生成c配置文件l安装后生成的所有文件i安装信息yum:yuminstall包名安装yumremove包名卸载yumhistoryundo/redo根据yum历史进行操作制作yum仓库:创建/etc/yum.d/*.repo编辑添加[仓库名]name=baseurl=file://或http://或https://或ftp://(路径为repoda
分类:
其他好文 时间:
2019-01-02 22:17:01
阅读次数:
248
(一)创建与删除任务函数 (二)上面的四个函数目前只用动态创建任务和删除任务 (三)动态创建任务 函数 xTaxkCreate() 1. 宏 configSUPPORT_DYNAMIC_ALLOCATION 必须为 1 2. 新创建的任务默认就是就绪态的,如果当前没有比它更高优先级的任务运行那么此任 ...
分类:
其他好文 时间:
2018-12-29 17:10:13
阅读次数:
223