1、系统表空间文件ibdata12、临时表空间文件ibtmp13、redo表空间文件ib_logfile0、ib_logfile1、ib_logfile24、undo表空间文件undo001、undo002、undo0035、用户表空间文件xxx.ibd,用户表空间,顾名思义,就是用户创建的表空间, ...
分类:
其他好文 时间:
2020-01-08 00:55:45
阅读次数:
75
原始版: 直接读写数据库文件; 改进版1:undo log 将待未改数据备份到缓存,直接修改数据库文件; 改进版2: 将未修改和待修改数据写进顺序日志,定时同步到数据库。 核心是解决数据安全和io性能问题。 InnoDB 有两块非常重要的日志,一个是undo log,另外一个是redo log,前者 ...
分类:
数据库 时间:
2020-01-07 19:56:51
阅读次数:
120
文章部分总结来自课程,非原创 MySQL 组织架构 下面这张图就可以解释关于 MySQL 底层的组织架构了。 上面的图可以直观地展示两个重要的东西 : 一条 SQL 的执行流程 MySQL 的底层架构 大体来说,MySQL可以分为Server层和存储引擎层两部分。 Server 层 Server层包 ...
分类:
数据库 时间:
2020-01-06 00:36:37
阅读次数:
108
前言 InnoDB 有两块非常重要的日志,一个是undo log,另外一个是redo log,前者用来保证事务的原子性以及InnoDB的MVCC,后者用来保证事务的持久性。 和大多数关系型数据库一样,InnoDB记录了对数据文件的物理更改,并保证总是日志先行,也就是所谓的WAL,即在持久化数据文件前 ...
分类:
其他好文 时间:
2020-01-04 22:38:37
阅读次数:
124
持久化 undo/redo " 在你的 vimrc 加入 set undofile " Maintain undo history between sessions " 设置你的undo保存位置,你需要先 mkdir ~/.vim/undodir set undodir=~/.vim/undodir ...
分类:
系统相关 时间:
2019-12-28 23:12:47
阅读次数:
229
MySQL物理结构: MySQL它是通过文件系统对数据进行储存和管理,从物理结构上分为日志文件和数据文件 日志文件: 日志文件记录了数据库操作的信息和一些错误信息,我们常用的日志文件有:错误日志、二进制日志、查询日志、慢查询日志、InnoDB引擎在线 redo日志和中继日志等。 错误日志(err l ...
分类:
数据库 时间:
2019-12-28 21:22:03
阅读次数:
149
1. Mysql查询时limit offset比较大时的性能问题 https://blog.csdn.net/fdipzone/article/details/72793837 优化方案:先根据索引查询出主键id,然后根据主键id关联出数据 知识点: a. mysql一级索引、二级索引,以及inno ...
分类:
其他好文 时间:
2019-12-27 23:23:21
阅读次数:
91
什么是多表关联查询? 根据多表连接查询返回的结果,分为三类 内连接(inner join) 外连接(outer join) 交叉连接( cross join) 交叉链接 交叉连接的关键字:CROSS JOIN 交叉连接的表现:行数相乘、列数相加 交叉连接(笛卡尔积)返回被连接的两个表所有数据行的笛卡 ...
分类:
数据库 时间:
2019-12-27 21:45:04
阅读次数:
80
例如,执行update时,更新语句涉及到了数据的更改,所以必不可少的需要引入日志模块。 redo log重做日志 redo log是InnoDB引擎特有的日志模块。 如果每一次的更新操作都需要写进磁盘,之后磁盘也要找到对应的那条记录,然后再更新,整个过程 IO 成本、查找成本都很高。 InnoDB引 ...
分类:
数据库 时间:
2019-12-24 12:10:10
阅读次数:
102
分布式事务之解决方案(XA和2PC) https://zhuanlan.zhihu.com/p/93459200 3. 分布式事务解决方案之2PC(两阶段提交) 针对不同的分布式场景业界常见的解决方案有2PC、TCC、可靠消息最终一致性、最大努力通知这几种。 3.1. 什么是2PC 2PC即两阶段提 ...
分类:
其他好文 时间:
2019-12-22 18:38:49
阅读次数:
142