首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
lizhiyong
掘友等级
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
2
文章 2
沸点 0
赞
2
返回
|
搜索文章
最新
热门
临时表
tmp_table_size 这个配置限制了内存临时表的大小,默认值是 16M。 磁盘临时表使用的引擎默认是 InnoDB,是由参数 internal_tmp_disk_storage_engine 控制的。
rowid
如果你创建的表没有主键,或者把一个表的主键删掉了,那么 InnoDB 会自己生成一个长度为 6 字节的 rowid 来作为主键。 这也就是排序模式里面,rowid 名字的来历。 实际上它表示的是:每个引擎用来唯一标识数据行的信息。
order排序
7.按照排序结果取前 1000 行返回给客户端。 7.遍历排序结果,取前 1000 行,并按照 id 的值回到原表中取出 city、name 和 age 三个字段返回给客户端。
redolog两阶段提交
binlog完整事务也提交,只有在binlog不完整时,事务会回滚,以前更新数据页会丢失。
redolog,binlog,undolog
如果只从崩溃恢复的角度来讲把 binlog 关掉,这样就没有两阶段提交了,但系统依然是 crash-safe 的。 binlog是归档日志。 redo log 是循环写,写到末尾是要回到开头继续写的。这样历史日志没法保留,redo log 也就起不到归档的作用。 redo lo…
重建表
optimize table t 等于 recreate+analyze。 在重建表的时候,InnoDB 不会把整张表占满,每个页留了 1/16 给后续的更新用。也就是说,其实重建表之后不是“最”紧凑的。
事务序列里先插入数据还是先更新数据
从并发系统性能的角度考虑,应该先插入操作记录,再更新。 更新涉及到行锁的竞争,先插入再更新能最大程度地减少了更新操作持有的行锁时间,减少别的事务对于该更新事物的锁等待时间,提升了并发度。
count计数
对于 count(主键 id) 来说,InnoDB 引擎会遍历整张表,把每一行的 id 值都取出来,返回给 server 层。server 层拿到 id 后,判断是不可能为空的, 就按行累加。 对于 count(1) 来说,InnoDB 引擎遍历整张表,但不取值。server …
mysql wal顺序写
随机写我的理解是,这次写磁盘的那个扇区和上一次没啥关系,需要重新定位位置,机械运动是很慢的即使不是机械运动重新定位写磁盘的位置也是很耗时的。 顺序写我的理解是,这次写磁盘那个扇区就在上一次的下一个位置,不需要重新定位写磁盘的位置速度当然会快一些。 写redolog是顺序写的,先…
DML,DDL,DCL
就是我们最经常用到的 SELECT、UPDATE、INSERT、DELETE。主要用来对数据库的数据进行一些操作。 就是我们在创建表的时候用到的一些sql,比如说:CREATE、ALTER、DROP等。DDL主要是用在定义或改变表的结构,数据类型,表之间的链接和约束等初始化工作…
下一页
个人成就
文章被点赞
19
文章被阅读
85,355
掘力值
1,494
关注了
17
关注者
3
收藏集
9
关注标签
74
加入于
2018-10-25