摘要: 崩溃恢复时的判断规则。 如果 redo log 里面的事务是完整的,也就是已经有了 commit 标识,则直接提交; 如果 redo log 里面的事务只有完整的 prepare,则判断对应的事务 binlog 是否存在并完整:a. 如果是,则提交事务;b. 否则,回滚事务。 阅读全文
posted @ 2020-02-01 14:14 lakeslove 阅读(122) 评论(0) 推荐(0) 编辑
摘要: 对于 count(*) 请求来说,InnoDB 只好把数据一行一行地读出依次判断,可见的行才能够用于计算“基于这个查询”的表的总行数。 InnoDB 是索引组织表,主键索引树的叶子节点是数据,而普通索引树的叶子节点是主键值。所以,普通索引树比主键索引树小很多。 对于 count(*) 这样的操作,遍 阅读全文
posted @ 2020-02-01 12:51 lakeslove 阅读(479) 评论(0) 推荐(0) 编辑
摘要: delete 命令其实只是把记录的位置,或者数据页标记为了“可复用”,但磁盘文件的大小是不会变的。 也就是说,通过 delete 命令是不能回收表空间的。 这些可以复用,而没有被使用的空间,看起来就像是“空洞”。 不止是删除数据会造成空洞,插入数据也会。如果数据是按照索引递增顺序插入的,那么索引是紧 阅读全文
posted @ 2020-02-01 12:32 lakeslove 阅读(181) 评论(0) 推荐(0) 编辑