上一页 1 ··· 6 7 8 9 10 11 12 下一页
摘要: 之前有用户很不解:SQL语句非常简单,就是select * from test_1 where user_id=1 这种类型,而且user_id上已经建立索引了,怎么还是查询很慢?test_1的表结构:CREATE TABLE `test_1` ( `id` int(11) NOT NULL AUT... 阅读全文
posted @ 2014-10-09 20:32 yuyue2014 阅读(2418) 评论(0) 推荐(1) 编辑
摘要: InnoDB’s Undo 前言 Undo log是InnoDB MVCC事务特性的重要组成部分。当我们对记录做了变更操作时就会产生undo记录,Undo记录默认被记录到系统表空间(ibdata)中,但从5.6开始,也可以使用独立的Undo 表空间。 Undo记录中存储的是老版本数据,当一个旧的事务 阅读全文
posted @ 2014-08-30 16:11 yuyue2014 阅读(1721) 评论(0) 推荐(1) 编辑
摘要: 视图本身是一个虚拟表,不存放任何数据。在使用SQL语句访问视图的时候,它返回的数据是MySQL从其他表中生成的。视图和表在同一个命名空间,MySQL在很多地方对于视图和表是同样对待的。不过视图和表也有不同。例如,不能在视图上创建触发器,也不能用DROP TABLE命令删除视图。视图的实现算法:合并算... 阅读全文
posted @ 2014-08-04 10:35 yuyue2014 阅读(350) 评论(0) 推荐(1) 编辑
摘要: 1、权限问题alter routine 编辑或删除存储过程create routine 建立存储过程execute 创建存储过程2、存储过程相关的一些命令show procedure status\G 查看数据库中有哪些存储过程show procedure status where db = 'db... 阅读全文
posted @ 2014-08-03 17:37 yuyue2014 阅读(4328) 评论(0) 推荐(1) 编辑
摘要: MySQL查询执行路径1. 客户端发送一条查询给服务器;2. 服务器先会检查查询缓存,如果命中了缓存,则立即返回存储在缓存中的结果。否则进入下一阶段;3. 服务器端进行SQL解析、预处理,再由优化器生成对应的执行计划;4. MySQL根据优化器生成的执行计划,调用存储引擎的API来执行查询;5. 将... 阅读全文
posted @ 2014-07-06 11:53 yuyue2014 阅读(22052) 评论(0) 推荐(0) 编辑
摘要: 部分写失效想象这么一个场景,当数据库正在从内存向磁盘写一个数据页时,数据库宕机,从而导致这个页只写了部分数据,这就是部分写失效,它会导致数据丢失。这时是无法通过重做日志恢复的,因为重做日志记录的是对页的物理修改,如果页本身已经损坏,重做日志也无能为力。两次写机制从上面分析我们知道,在部分写失效的情况... 阅读全文
posted @ 2014-07-06 10:13 yuyue2014 阅读(760) 评论(0) 推荐(0) 编辑
摘要: Join 的实现原理在MySQL 中,只有一种Join 算法,也就是Nested Loop Join,没有其他很多数据库所提供的Hash Join,也没有Sort Merge Join。顾名思义,Nested Loop Join 实际上就是通过驱动表的结果集作为循环基础数据,然后一条一条的通过该结果... 阅读全文
posted @ 2014-06-24 13:34 yuyue2014 阅读(1539) 评论(0) 推荐(0) 编辑
摘要: insert buffer 是InnoDB存储引擎所独有的功能。通过insert buffer,InnoDB存储引擎可以大幅度提高数据库中非唯一辅助索引的插入性能。数据库对于自增主键值的插入是顺序的,因此插入能有较高的性能。但是实际生产环境中,用户表中主键仅有并且只能有1个,然而表中可能存在多个辅助... 阅读全文
posted @ 2014-06-22 17:42 yuyue2014 阅读(5022) 评论(2) 推荐(4) 编辑
摘要: 1. 聚集索引聚集索引(clustered index)就是按照每张表的主键构造一棵B+树,同时叶子节点中存放的为整张表的行记录数据。也将聚集索引的叶子节点称为数据页。同B+树数据结构一样,每个数据页都通过一个双向链表进行链接。由于实际的数据页只能按照一棵B+树进行排序,因此每张表只能拥有一个聚集索... 阅读全文
posted @ 2014-06-15 20:50 yuyue2014 阅读(1258) 评论(0) 推荐(0) 编辑
摘要: 一、Query ProfilerMySQL 的Query Profiler 是一个使用非常方便的Query 诊断分析工具,通过该工具可以获取一条Query 在整个执行过程中多种资源的消耗情况,如CPU,IO,IPC,SWAP 等,以及发生的PAGE FAULTS,CONTEXT SWITCHE 等等... 阅读全文
posted @ 2014-06-08 22:44 yuyue2014 阅读(1036) 评论(0) 推荐(0) 编辑
上一页 1 ··· 6 7 8 9 10 11 12 下一页