摘要: 什么是最左匹配原则? 阅读全文
posted @ 2022-04-21 18:58 诗风雅韵 阅读(762) 评论(0) 推荐(0) 编辑
摘要: **索引有什么分类?** - 1、主键索引:名为primary的唯一非空索引,不允许有空值。 - 2、唯一索引:索引列中的值必须是唯一的,但是允许为空值。唯一索引和主键索引的区别是:唯一约束的列可以为null且可以存在多个null值。唯一索引的用途:唯一标识数据库表中的每条记录,主要是用来防止数据重复插入。创建唯一索引的SQL语句如下: ```ALTER TABLE table_name ADD CONSTRAINT constraint_name UNIQUE KEY(column_1,column_2,...); ``` - 3、组合索引:在表中的多个字段组合上创建的索引,只有在查询条件中使用了这些字段的左边字段时,索引才会被使用,使用组合索引时需遵循最左前缀原则。 - 4、普通索引(单值索引) - 5、全文索引:只有在MyISAM引擎上才能使用,只能在CHAR、VARCHAR和TEXT类型字段上使用全文索引。 阅读全文
posted @ 2022-04-21 18:52 诗风雅韵 阅读(2011) 评论(0) 推荐(0) 编辑
摘要: - 启用查询缓存 特别注意:查询缓存从MySQL 5.7.20开始已被弃用,并在MySQL 8.0中被删除。、 - 一种说法是不建议使用查询缓存,因为查询缓存往往弊大于利。查询缓存的失效非常频繁,只要有对一个表的更新,这个表上的所有的查询缓存都会被清空。因此很可能你费劲地把结果存起来,还没使用呢,就被一个更新全清空了。对于更新压力大的数据库来说,查询缓存的命中率会非常低。除非你的业务有一张静态表,很长时间更新一次,比如系统配置表,那么这张表的查询才适合做查询缓存。 - 引擎优化 MyISAM存储引擎: 场景:如果表主要是用于插入新记录和读出记录,那么选择MyISAM能实现处理高效率。 优点:MyISAM引擎能提供较高的查询效率,适用于对数据进行频繁查询操作的数据表(InnoDB提供提交、回滚、崩溃恢复能力及并发控制能力,适用于对数据更新操作频率高的数据表) - 索引优化 阅读全文
posted @ 2022-04-21 15:24 诗风雅韵 阅读(329) 评论(0) 推荐(0) 编辑
摘要: 四种隔离级别: READ-UNCOMMITTED(读取未提交): 最低的隔离级别,允许读取尚未提交的数据变更,** 可能会导致脏读、幻读或不可重复读** 。 READ-COMMITTED(读取已提交): 允许读取并发事务已经提交的数据, 可以阻止脏读,但是幻读或不可重复读仍有可能发生 。 REPEATABLE-READ(可重复读): 对同一字段的多次读取结果都是一致的,除非数据是被本身事务自己所修改, 可以阻止脏读和不可重复读,但幻读仍有可能发生 。 SERIALIZABLE(可串行化): 最高的隔离级别,完全服从ACID的隔离级别。所有的事务依次逐个执行,这样事务之间就完全不可能产生干扰,也就是说,该级别可以防止脏读、不可重复读以及幻读 阅读全文
posted @ 2022-04-21 15:18 诗风雅韵 阅读(617) 评论(0) 推荐(0) 编辑