![](https://img-blog.csdnimg.cn/20190927151132530.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
mysql----学习篇
mysql的学习知识点
奋斗小亮
DayDayUp
展开
-
MySql锁机制
表锁(偏读) 行锁(偏写) 页锁 行锁(偏写) 特点: 偏向InnoDB存储引擎,开销大,加锁慢;会出现死锁;锁定粒度最小,发生锁冲突的概率最低,并发度也最高。 InnoDB与MyISAM的最大不同有两点:一是支持事务(TRANSACTION);二是采用了行级锁 由于行锁支持事务,老知识点:事务(Transaction)及其ACID属性 事务是由一组SQL语句组成的逻辑处理单元,事务具有以下4个属...原创 2020-03-20 22:55:53 · 87 阅读 · 0 评论 -
截取查询分析
1. 慢查询日志 1.1 是什么 (1)MySQL的慢查询日志是MySQL提供的一种日志记录,它用来记录在MySQL中响应时间超过阀值的语句,具体指运行时间超过long_query_time值的SQL,则会被记录到慢查询日志中。 (2)具体指运行时间超过long_query_time值的SQL,则会被记录到慢查询日志中。long_query_time的默认值为10,意思是运行10秒以上的语句。 ...原创 2020-03-19 16:15:10 · 143 阅读 · 0 评论 -
排序分组优化
where 条件和 on 的判断这些过滤条件,作为优先优化的部分,是要被先考虑的! 其次,如果有分组和排序,那么也要考虑 grouo by 和 order by。 MySQL支持二种方式的排序,FileSort和Index,Index效率高. 它指MySQL扫描索引本身完成排序。FileSort方式效率较低。 ORDER BY满足两情况,会使用Index方式排序: ORDER BY 语句使用索引...原创 2020-03-19 15:29:53 · 532 阅读 · 0 评论 -
查询优化
1.单表使用索引常见的索引失效 2.关联查询优化 3.子查询优化 1.单表使用索引常见的索引失效 1. 全值匹配我最爱 1.1 有以下 SQL EXPLAIN SELECT SQL_NO_CACHE * FROM emp WHERE emp.age=30 EXPLAIN SELECT SQL_NO_CACHE * FROM emp WHERE emp.age=30 and deptid=4 E...原创 2020-03-19 13:32:37 · 360 阅读 · 0 评论 -
Explain 性能分析
Explain 性能分析 1. 概念 使用 EXPLAIN 关键字可以模拟优化器执行 SQL 查询语句,从而知道 MySQL 是如何处理你的 SQL 语句的。分析你的查询语句或是表结构的性能瓶颈。 用法: Explain+SQL 语句。 Explain 执行后返回的信息: 2. Explain 准备工作 CREATE TABLE t1(id INT(10) AUTO_INCREMENT,con...原创 2020-03-18 23:29:15 · 280 阅读 · 0 评论 -
认识索引
1. 索引的概念 1.1 是什么 MySQL 官方对索引的定义为:索引(Index)是帮助 MySQL 高效获取数据的数据结构。可以得到索引的本质:索引是数据结构。可以简单理解为排好序的快速查找数据结构。 在数据之外,数据库系统还维...原创 2020-03-18 21:19:18 · 156 阅读 · 0 评论 -
MySql(三) MySql中的锁机制
讲到锁大家应该都不陌生。像是Java中常见的采用CAS算法实现的乐观锁,典型的例子就是原子类,通过CAS自旋实现原子操作的更新,悲观锁通常都是Synchronized和Lock实现。 乐观锁与悲观锁 乐观锁:每次读数据的时候都认为其他人不会修改,所以不会上锁,而是在更新的时候去判断在此期间有没有其他人更新了数据,可以使用版本号机制。在数据库中可以通过为数据表增加一个版本号字段实现。读取数据时...转载 2019-10-28 14:10:24 · 117 阅读 · 0 评论 -
MySQL(二) MySql常用优化
一、常见的树结构: 二叉树:每个父节点大于左孩子节点,小于右孩子节点 。 平衡二叉树:二叉树的基础上,每个节点的子树高度差不大于1 。 BTree:是一种平衡多路搜索树,另外并保证了每个叶子结点到根节点的距离相同,每个节点保存了data B+Tree:非叶子结点只存放key,叶子节点存储key,data.叶子节点可以包含一个指针指向另一个叶子节点以加速顺序存取 二、MySql存储引擎 I...转载 2019-10-28 13:45:41 · 101 阅读 · 0 评论 -
MySql(一) 浅析MySql索引
1、简介 索引在数据库中用来提高查询的效率(类似新华字典的偏旁部首检索),可以避免全表扫描查询,索引也会占用数据库资源,避免滥用。 2、索引建立的原则 较频繁的作为查询条件的字段应该创建索引 唯一性太差的字段不适合单独创建索引,即使频繁作为查询条件 更新非常频繁的字段不适合创建索引(数据库会将索引数据根据算法排序,数据量大之后重新排序会占用过多资源) 用于索引的最好的备选数据列是那些出现在WHE...转载 2019-10-28 13:14:48 · 107 阅读 · 0 评论