随笔分类 - mysql
摘要:一、为什么要创建索引? 合理的创建索引可以大大提高系统的性能。 二、索引的分类 2.1. 普通索引 仅加速查询2.2. 主键索引 加速查询+列值唯一,一张表最多只能创建一个主键索引2.3. 唯一索引 加速查询+列值唯一(允许有空值,如果是组合索引,则列值的组合必须唯一)2.4. 组合索引 多列值组成
阅读全文
摘要:慢查询日志中记录到有查询异常慢的问题,可能是因为未创建索引或索引失效;也可能是系统中有其他东西消耗了资源,也可能是某种类型的锁或者争用阻塞了查询的进度。 一、EXPLAIN 1.1. explain命令的介绍 explain 命令可以查看SQL语句的执行计划,当explain 与SQL语句一起使用时
阅读全文
摘要:在DBMS中,可以按照锁的粒度把数据库锁分为行级锁(INNODB引擎)、表级锁(MYISAM引擎)和页级锁(BDB引擎 )。 一、行级锁 行级锁是Mysql中锁定粒度最细的一种锁,表示只针对当前操作的行进行加锁。行级锁能大大减少数据库操作的冲突。其加锁粒度最小,但加锁的开销也最大。行级锁分为共享锁
阅读全文
摘要:Mysql 查看表注释或字段注释查看所有表的注释 SELECT table_name 表名, table_comment 表说明 FROM information_schema. TABLES WHERE table_schema = '数据库名' ORDER BY table_name ; 查询所
阅读全文
摘要:一、执行计划有什么用? 二、主要指标: 1. select_type• SIMPLE:简单的查询(没有union或子查询)• PRIMARY:最外层的查询(有union或子查询)• DERIVED:衍生表查询(FROM语句中的子查询) 2. type• 从优到差排序如下: const:只匹配一行,根
阅读全文
摘要:SQL(Structure Query Language)语言是数据库的核心语言。 SQL语言共分为四大类:数据定义语言DDL,数据操纵语言DML,数据查询语言DQL,数据控制语言DCL。 1. 数据定义语言DDL数据定义语言DDL用来创建数据库中的各种对象 表、视图、索引、同义词、聚簇等如:CRE
阅读全文