mysql高级
一、索引
1、什么是索引?
2、索引有什么作用?
3、事务有什么作用?
4、事务的并发问题有哪些?如何处理?
5、锁的作用是什么?
第一章 索引、事务和锁
一、索引
- 什么是索引?
一般的应用系统,读写比例在 10:1 左右,而且插入操作和一般的更新操作很少出现性能问题,在生产环境 中,我们遇到最多的,也是最容易出问题的,还是一些复杂的查询操作,因此对查询语句的优化显然是重中之重。 - 为什么要有索引?
由于我们在日常生产过程中,内容工作量太大,为了加快查询所需要的内容,就有了索引,索引相当于我们常用的电话簿、以及字典的目录页(拼音查字、偏旁部首查字)。 - 索引的优劣势:
1、索引的优势:加快查询的速度,减少工作量,根据索引进行分组排序,能更快的查询我们所需要的内容。
2、索引的劣势:索引本身也是表,因此会占用存储空间,一般来说,索引表的维护和创建需要时间成本,这个成本随着数据量增大而增大;构建索引会降低数据表的修改操作(删除, 添加,修改)的效率,因为在修改数据表的同时还需要修改索引表。所以经常增删改的列不要建立索引;有大量重复的列不建立索引;
扩展:MySQL 中索引的使用
1、 创建索引 索引可以在创建表时创建,也可以在创建表之后添加。
创建表的时候创建索引:CREATE TABLE mytable( ID INT NOT NULL,
username VARCHAR(16) NOT NULL,
INDEX myindex (username(16)) );
创建表之