
MySQL
文章平均质量分 91
MySQL学习总结
@从入门到入土
学无止境
展开
-
MySQL EXPLAIN属性分析
目录测试数据准备EXPLAIN 如何使用?属性分析idselect_typetypepossible_key、keykey_lenrefrowsfilteredExtraEXPLAIN 语句提供了有关 MySQL 如何执行 SQL 的相关信息,是我们必须掌握的SQL优化神器。官网对EXPLAIN的解释:https://dev.mysql.co...原创 2020-01-08 17:47:20 · 607 阅读 · 0 评论 -
MySQL常用DDL语句
删除表-- 如果存在则删除DROP TABLE IF EXISTS t_user;创建表-- 创建表CREATE TABLE t_user( id BIGINT(20) unsigned NOT NULL AUTO_INCREMENT, user_code VARCHAR(20) NOT NULL COMMENT '系统号', user_name VARCHAR(50)...原创 2019-09-09 18:10:24 · 3170 阅读 · 0 评论 -
MySQL常用规范
一. 建表规范1.使用InnoDB引擎无特殊情况必须使用InnoDB引擎(5.5版本后默认引擎)InnoDB支持事务、行级锁、MVCC,并发性能更好,CPU及内存缓存页优化使得资源利用率更好。2.规范表、字段的命名表名、字段名,小写下划线风格,尽量做到见名知意。3.规范索引命名主键索引名为pk_表名_字段名,唯一索引名为uk_表名_字段名,普通索引为idx_表名_字段名...原创 2019-07-18 14:31:09 · 3910 阅读 · 0 评论 -
MySQL死锁案例
死锁案例1多线程以不同顺序对相同资源加锁导致死锁。 时间 会话A 会话B 1 BEGIN; 2 SELECT * FROM t WHERE a = 1 FOR UPDATE; BEGIN; 3 SELECT * FROM t WHERE a = 2 FOR UPDATE;...原创 2019-07-18 14:13:16 · 2070 阅读 · 2 评论 -
MySQL批量插入与更新
建表CREATE TABLE `t` ( `id` int(11) NOT NULL, `age` int(11) DEFAULT NULL, `name` varchar(20) DEFAULT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf81. insert into values、inser...原创 2019-05-20 16:07:36 · 126173 阅读 · 10 评论 -
MySQL的索引结构
目录索引是什么?索引的作用为什么索引的数据结构使用B+Tree?平衡二叉查找树 AVL-Tree多路平衡查找树 B-Tree多路平衡查找树加强版 B+TreeB+Tree的优势MySQL中B+Tree的表现形式MyISAM引擎InnoDB引擎联合索引最左前缀原则覆盖索引索引是什么?索引是对数据库表中一列或多列的值进行排序的一种结构,使用...原创 2018-12-11 23:39:33 · 2283 阅读 · 0 评论 -
MySQL MVCC Undo log Redo log
目录什么是MVCC?MVCC-插入 MVCC-删除MVCC-修改MVCC-查询Undo logRedo log什么是MVCC?Multi Version Concurrency Control (多版本并发控制)并发访问(读或写)数据库时,对事务内正在处理的数据做多版本管理。以实现写操作堵塞的同时,依然可以进行读操作。MVCC-插入 插入规则:...原创 2018-12-17 22:42:29 · 4983 阅读 · 0 评论 -
MySQL锁介绍
目录理解表锁与行锁MySQL InnoDB锁类型共享锁与排他锁意向共享锁(IS)与意向排他锁(IX)自增锁AUTO-INC Locks记录锁 Record Locks临键锁 Next-key Locks间隙锁 Gap Locks死锁死锁的避免理解表锁与行锁锁定粒度:表锁 > 行锁加锁效率:表锁 > 行锁冲突概率:表锁 > ...原创 2018-12-16 16:52:45 · 2048 阅读 · 0 评论 -
MySQL的查询优化
目录查询执行流程图客户端/服务端通信通信状态查询查询缓存为什么MySQL默认关闭了缓存开启?查询优化处理EXPLAIN查询执行引擎返回客户端查询执行流程图客户端/服务端通信MySQL客户端与服务端的通信方式是“半双工”。全双工:双向通信,发送同时也可以接收;半双工:双向通信,同一时间只能接收或者是发送,无法同时做操作;单工:只能单一...原创 2018-12-15 00:19:56 · 2087 阅读 · 0 评论 -
MySQL事务特性
目录什么是事务?ACID原子性(Atomicity)一致性(Consistency)隔离性(Isolation)持久性(Durability)事务并发问题事务隔离级别什么是事务?一组原子性的SQL指令集合,要么全部执行成功,要么全部执行失败。ACID原子性(Atomicity)整个事务所有操作要么全部提交成功,要么全部失败回滚,不可能...原创 2018-12-15 22:02:21 · 4934 阅读 · 0 评论 -
MySQL的存储引擎
目录什么是引擎?MySQL的常见引擎CSV存储引擎Archive(档案)存储引擎Memory存储引擎MyISAM存储引擎InnoDB存储引擎InnoDB与MyISAM的比较什么是引擎?引擎(Engine)是电子平台上开发程序或系统的核心组件。利用引擎,开发者可迅速建立、铺设程序所需的功能,或利用其辅助程序的运转。一般而言,引擎是一个程序或一套系统的支持...原创 2018-11-20 23:28:18 · 2166 阅读 · 0 评论