mysql优化
本系列博文从mysql引擎、mysql事务、mysql并发控制、悲观锁乐观锁、mysql索引优化、查询优化、mysql分表分区这几各方面介绍了mysql优化的几个方面,提供了应对数据库高并发的解决思路。
钟艾伶
这个作者很懒,什么都没留下…
展开
-
MySQL数据库优化(五)——MySQL查询优化
一、mysql查询类型(默认查询出所有数据列) 1、内连接 默认多表关联查询方式,查询出两个表中所有字段;可省略inner join 关键字 2、外连接 查询出某一张表中的所有数据 (1)左连接 查询出第一张表的所有字段 (2)右连接 查询出第二张表的所有字段,表一匹配数据为空的返回null 3、子连接 --内连接 查询出bookID=book类型原创 2016-06-11 21:30:13 · 3249 阅读 · 0 评论 -
MySQL数据库优化(四)——MySQL索引优化
一、索引基础 索引类型: 1、普通索引: 创建到任何数据类型中 2、唯一性索引:限制索引值必须唯一 3、全文索引:只能创建到char、varchar、text类型字段上,主要用于提高文本查询速度。MyISAM引擎支持。 4、单列索引:给表中单个字段创建索引 5、多列索引:给多个字段创建索引 6、空间索引:使用spatial...原创 2016-06-08 17:10:43 · 1472 阅读 · 0 评论 -
MySQL数据库优化(三)——MySQL悲观锁&&乐观锁(并发控制)
一、读锁(共享锁)、写锁(排它锁) 二、锁粒度:表锁(table lock)、行级锁(row lock) 三、乐观锁和悲观锁 悲观锁 排它锁,当事务在操作数据时把这部分数据进行锁定,直到操作完毕后再解锁,其他事务操作才可操作该部分数据。这将防止其他进程读取或修改表中的数据。 实现:一般使用 select ...for update 对所选择的数据进行加锁处理,例如原创 2016-06-08 09:55:12 · 28903 阅读 · 0 评论 -
MySQL数据库优化(二)——MySQL事务
一、ACID Atomicity 原子性 :一个事务被视为一个不可分割的最小工作单元,整个事务要么全执行,要么全部失败回滚。 Consistency 一致性:数据库总是从一个一致性的状态转换到另一个一致性的状态。例如,即使取钱操作失败,因为事务没有提交,所以事务所做的修改也不会保存到数据库中,数据还是事务执行前的状态。如果事务执行成功,那数据就是执行后的状态,保持不变。原创 2016-06-07 21:01:48 · 1727 阅读 · 0 评论 -
MySQL数据库优化(一)——MySQL引擎
一、MySQL引擎种类 (一)、InnoDB 1、InnoDB简介 InnoDB是my默认引擎,支持事务,in的数据存储在表空间(tablespace)中,通过间隙锁(next-key locking)防止幻读。 2、InnoDB特点 (1)In内部做了很多优化,in基于聚簇索引建立表,对主键查询有很高的性能。 (2)读取数据时,能够在内存中创建hash索引加速插原创 2016-06-07 15:04:49 · 1292 阅读 · 1 评论