![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
MySQL
文章平均质量分 83
dearfulan
这个作者很懒,什么都没留下…
展开
-
MySQL半同步复制浅析
MySQL半同步复制流程转载 2022-11-02 21:32:30 · 1022 阅读 · 0 评论 -
记一次“曲折“的MySQL数据导出
MySQL导出大量线上数据原创 2021-08-01 18:38:11 · 205 阅读 · 0 评论 -
《MySQL实战45讲》实践篇 24-29 学习笔记 (主备篇)
24 | MySQL是怎么保证主备一致的?主备切换流程如下:建议把节点 B(也就是备库)设置成只读(readonly)模式。1.有时候一些运营类的查询语句会被放到备库上去查,设置为只读可以防止误操作;2.防止切换逻辑有 bug,比如切换过程中出现双写,造成主备不一致;3.可以用 readonly 状态,来判断节点的角色readonly 设置对超级 (super) 权限用户是无效的,而用于同步更新数据的线程,就拥有超级权限。(所以一个readonly的从库还是可以同步主库的数据的)主从同步的流原创 2020-05-17 11:20:13 · 504 阅读 · 0 评论 -
《MySQL实战45讲》实践篇 9-15讲 学习笔记
09 | 普通索引和唯一索引,应该怎么选择?查询select id from T where k=5查询到叶子节点,唯一索引在找到第一个之后就会不再搜索,而普通索引会继续检索直到遇到第一个不满足条件的二者性能差别微乎其微 ,因为InnoDB是按页加载数据的,只是多执行一次指针寻找和一次计算,并不耗时更新在不影响数据一致性的前提下,InnoDB 会将这些更新操作缓存在 change buffer 中。将 change buffer 中的操作应用到原数据页,得到最新结果的过程称为 merge。除了原创 2020-05-16 19:43:47 · 567 阅读 · 1 评论 -
ON DUPLICATE KEY UPDATE 用法与说明
ON DUPLICATE KEY UPDATE作用先声明一点,ON DUPLICATE KEY UPDATE为Mysql特有语法,这是个坑语句的作用,当insert的时候如果对应的记录已经存在,则执行Update用法什么意思?举个例子:user_admin_t表中有一条数据如下表中的主键为id,现要插入一条数据,id为‘1’,password为‘第一次插入的密码’,一般写法为:INSERT INTO user_admin_t (_id,password) VALUES ('1','第一次插入转载 2020-05-16 17:42:15 · 336 阅读 · 0 评论 -
《MySQL实战45讲》基础理论篇 1-8讲 学习笔记
图片来自于极客时间,如有版权问题,请联系我删除。对于索引一些比较了解的,记录的比较少,感兴趣的可以看我其他MySQL的文章01 | 基础架构:一条SQL查询语句是如何执行的?1.连接器如果用户名密码认证通过,连接器会到权限表里面查出你拥有的权限。之后,这个连接里面的权限判断逻辑,都将依赖于此时读到的权限。这就意味着,一个用户成功建立连接后,即使你用管理员账号对这个用户的权限做了修改,也不会影响已经存在连接的权限。修改完成后,只有再新建的连接才会使用新的权限设置建立连接的过程通常是比较复杂的,所原创 2020-05-11 10:35:03 · 467 阅读 · 0 评论 -
MySQL(四)索引的使用
目录索引使用原则列的离散度联合索引最左匹配覆盖索引索引条件下推(ICP)索引的创建与使用索引创建基本原则什么时候用不到索引我们创建索引主要是为了提高查询数据的效率,但是索引并不是越多越好,也不是所有的列都可以创建索引索引使用原则列的离散度列的离散度的公式:count(distinct(column_name)) : count(*)列的全部不...原创 2020-02-05 20:23:56 · 1443 阅读 · 0 评论 -
MySQL(八)MySQL性能优化
MySQL的优化最终目的时为了更快的查询数据,一个SQL的执行又由多个环节组成,每个环节都会消耗时间,为了提高整个SQL的执行效率,就需要从每一个环节入手。SQL的执行流程:连接...原创 2020-02-16 22:56:12 · 646 阅读 · 0 评论 -
MySQL(七)关于MySQL不同版本下临键锁锁定范围不同
MySQL InnoDB底层的锁实现算法分为三种 :记录锁,间隙锁,临键锁。之前在验证MySQL的临键锁的时候使用docker安装的最新版本的MySQL镜像,发现其临键锁在最新的MySQL的表现和低版本(5.7.10)不一致,后面又自己验证了一下,并整理成博客本文使用的高低版本MySQL分别为:高版本MySQL低版本MySQL...原创 2020-02-16 17:23:59 · 580 阅读 · 0 评论 -
MySQL(六)InnoDB锁详解
InnoDB 锁的基本类型https://dev.mysql.com/doc/refman/5.7/en/innodb-locking.html官网把InnoDB的锁分成了8 类。我们把前面的两个行级别的锁(Shared and Exclusive Locks),和两个表级别的锁(Intention Locks)称为锁的基本模式。后面三个Record Locks、Gap Locks、...原创 2020-02-13 20:57:26 · 548 阅读 · 0 评论 -
MySQL(五)MySQL事务
事务是数据库管理系统(DBMS)执行过程中的一个逻辑单位,由一个有限的数据库操作序列构成。 --...原创 2020-02-06 20:15:52 · 202 阅读 · 0 评论 -
MySQL(三)MySQL索引原理
数据库索引,是数据库管理系统(DBMS)中一个排序的数据结构,以协助快速查询、更新数据库表中数据。 -----维基百科对数据库索引...原创 2020-02-04 21:44:13 · 608 阅读 · 0 评论 -
MySQL(二)InnoDB的内存结构和特性
目录In-Memory Structures缓冲池Buffer Pool更新缓冲Change BufferAdaptive Hash Index(redo)Log Buffer磁盘结构On-Disk Structures后台线程MySQL区别于其他数据库的最为重要的特点就是其插件式的表存储引擎。而在众多存储引擎中,InnoDB是最为常用的存储引擎。从MySQL5....原创 2020-03-03 11:30:53 · 1621 阅读 · 0 评论 -
MySQL(一)SQL执行流程与MySQL架构
目录MySQL语句的执行流程1.通信协议1.1通信协议1.2 通信方式2.查询缓存3.语法解析和预处理3.1 词法解析3.2语法解析3.3 预处理器4.查询优化(Query Optimizer)与执行计划5.存储引擎6.执行引擎,返回结果MySQL体系结构MySQL语句的执行流程当向MySQL发送一条SQL请求的时候,MySQL到...原创 2020-02-03 19:12:52 · 568 阅读 · 0 评论