mysql
文章平均质量分 90
渔老师
专注企业电商采购领域解决方案
展开
-
有时候只查询一行语句,执行也慢
假如有一个SQL查询结果长时间不返回一般是表t被锁住了,这时候执行show processlist使用 show processlist 命令查看 Waiting for table metadata lock 的示意图。执行SQL查出来这个线程的状态是 Waiting for table flush,你可以设想一下这是什么原因。这个状态表示的是,现在又一个线程正要堆表t做flush操作,MySQL里面堆表做flush操作的用法,一般有以下两个:这两个flush语句,如果指定表t的话,代表原创 2022-07-01 10:45:09 · 181 阅读 · 0 评论 -
Mysql-如何正确的显示随机消息?
文章目录如何正确的显示随机消息?1.内存临时表1.1 语句的执行流程1.2 MySQL的表是用什么方法来定位"一行数据"的?2. 磁盘临时表3 随机排序方法4. 小结如何正确的显示随机消息?假设有一个功能,根据每个用户的级别有一个单词表,然后这个用户每次访问首页的时候,都会随机滚动显示三个单词,但随着单词表变大,选单词这个逻辑变得越来越慢。建表语句:mysql> CREATE TABLE `words` ( `id` int(11) NOT NULL AUTO_INCREMENT原创 2022-04-30 23:24:35 · 191 阅读 · 0 评论 -
“order by“是怎么工作的
文章目录16-"order by"是怎么工作的1. 全字段排序1.1 SQL查询语句的执行过程1.2 sort_buffer_size2 rowid排序2.1 MySQL处理排序的单行长度太大2.2 Rowid排序的执行流程3 全字段排序 VS rowid排序3.1 不需要排序3.2 优化执行流程4. 小结16-"order by"是怎么工作的假设表定义如下CREATE TABLE `t` ( `id` int(11) NOT NULL, `city` varchar(16) NOT原创 2022-03-31 22:59:29 · 966 阅读 · 0 评论 -
MySQL偶尔的停顿
文章目录12 MySQL为什么会突然抖动一下1. SQL语句为什么变慢2. 什么情况下会引发数据库的flush过程上面四种场景对性能的影响InnoDB刷脏页的控制策略3. 总结12 MySQL为什么会突然抖动一下有时候一条SQL在正常执行的时候很快,但有时候会特别慢。1. SQL语句为什么变慢InnoDB的WAL机制,InnoDB在处理更新语句的时候,只做了写日志这一个磁盘操作。这个日志叫做redo log(重做日志),在更新内存写完redo log之后,就返回给客户端,本次更新成功。即在原创 2021-12-30 20:39:16 · 1104 阅读 · 0 评论 -
字符串加索引
文章目录字符串加索引1. 前缀索引:两种不同定义在数据和结构上的区别1. 查询实例:2. 前缀索引对覆盖索引的影响3. 其他方式1. 倒叙存储2. 使用hash字段3. 两种方法异同点4. 总结:字符串加索引在邮箱字段建立合理索引:create table SUser(ID bigint unsigned primary key,email varchar(64), ... )engine=innodb; 使用邮箱登录,SQLselect f1, f2 from SUser wh原创 2021-11-30 23:53:02 · 1124 阅读 · 0 评论 -
MySQL索引选择
文章目录10 | MySQL索引选择优化器的逻辑1. 扫描行数的判断2. Mysql怎么得到索引的基数3.另一种情况4. 索引选择异常和处理10 | MySQL索引选择实例:CREATE TABLE `t` ( `id` int(11) NOT NULL, `a` int(11) DEFAULT NULL, `b` int(11) DEFAULT NULL, PRIMARY KEY (`id`), KEY `a` (`a`), KEY `b` (`b`)) ENGINE=In原创 2021-10-31 23:02:02 · 187 阅读 · 0 评论 -
MySQL索引选择
文章目录10 | MySQL索引选择优化器的逻辑1. 扫描行数的判断2. Mysql怎么得到索引的基数3.另一种情况4. 索引选择异常和处理10 | MySQL索引选择实例:CREATE TABLE `t` ( `id` int(11) NOT NULL, `a` int(11) DEFAULT NULL, `b` int(11) DEFAULT NULL, PRIMARY KEY (`id`), KEY `a` (`a`), KEY `b` (`b`)) ENGINE=In原创 2021-09-30 15:05:10 · 422 阅读 · 0 评论 -
MySQL普通索引和唯一索引
文章目录普通索引和唯一索引1.两种索引的查询过程2.两种索引的更新过程change Buffer什么时候使用change Buffer如果在上表插入新纪录(4,400),InnoDB的处理流程。change buffer的使用场景3. 索引的选择4. change buffer 和 redo log普通索引和唯一索引1.两种索引的查询过程假设查询语句: select id from T where k = 5;查询过程:通过B+树从树根开始,按层搜索到叶子节点数据页内部通过二分法来定位原创 2021-08-31 21:07:25 · 594 阅读 · 0 评论 -
MySQL事务及MVCC
MySQL事务-MVCC可重复读隔离级别,事务T启动的时候会创建一个视图read-view,之后事务T执行期间,即使有其他事务修改了数据,事务T仍然不受影响。假如一个事务要更新一行,如果刚好有另一个事务的行锁,那么它就会被锁住,进入等待状态。那么当这个事务获取到行锁要更新事务的时候,读到的值是什么?CREATE TABLE `t` ( `id` int(11) NOT NULL, `k` int(11) DEFAULT NULL, PRIMARY KEY (`id`)) EN原创 2021-07-31 23:46:54 · 119 阅读 · 0 评论 -
MySQL| 全局锁和表锁、行锁
文章目录MySQL| 全局锁和表锁、行锁全局锁表级锁行锁两阶段锁死锁和死锁检测小结MySQL| 全局锁和表锁、行锁根据加锁的范围,MySQL里面的锁大致可以分成全局锁,表级锁,行锁。全局锁对整个数据库实例加锁,MySQL提供了一个加全局读锁的方法,命令是Flush tables with read lock。当需要整个库处于只读状态时可以使用。数据更新语句、数据定义语句和更新类事务会被阻塞。使用场景:做全库逻辑备份。就是把整个表的select 出来存成文本。如果再主库上做备份,那原创 2021-07-02 16:54:47 · 230 阅读 · 0 评论 -
关系型数据库MySQL-联合查询-视图-用户权限
关系型数据库MySQL今天的分享的内容有 1. 联合查询union 2. 视图view 3. 用户权限管理 4. 事务 5. 联合查询1.1 用途将不同表格内,检索出来的数据放到一个结果集中!select `student_name` from `student` union select `class_name` from `class`;不是所有的语句的结果集都可以连起来,需要满足以下要求:如果使用union连接多个查询,必须保证每个查询的字段数相同列名原创 2021-07-02 09:17:36 · 492 阅读 · 0 评论 -
mysql索引(三)
文章目录03|MySQL的索引索引的常见模型常见的三种索引模型1、哈希表2、有序数组3、二叉搜索树InnoDB的索引模型索引维护覆盖索引最左前缀原则索引下推小结如何避免长事务对业务的影响。应用开发端数据库端03|MySQL的索引索引的出现就是为了提高数据查询的效率。索引的常见模型常见的三种索引模型1、哈希表key-value存储的结构。多个key值在hash之后出现同一值则进行链表加入。哈鼠标适用于等值查询的场景,不适合范围查询。2、有序数组当查询的某个数值在[x,y]区间内,原创 2021-06-07 10:18:00 · 362 阅读 · 0 评论 -
java必备技能-MyBatis-Plus使用指南
MyBatis-Plus使用指南1、pom.xml中 导入maven坐标文件<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.4.0</version></dependency>2、在application.yml中原创 2021-05-07 14:31:44 · 480 阅读 · 1 评论 -
mysql架构原理(一)
文章目录基础架构Service层连接器查询缓存分析器优化器执行器思考基础架构MySQL可以分为Server层、存储引擎层两部分。Server层包括:连接器查询缓存分析器优化器执行器内置函数(日期、时间等)引擎存储层:负责数据的存储和提取,架构模式是插件式的。InnoDBMyISAMMemory不同存储引擎的表存取方式不同,支持的方式也不同,但所有的存储引擎公用一个server层。Service层连接器连接器负责跟客户端建立连接、获取权限、维持和管理连接。原创 2021-04-06 09:49:36 · 307 阅读 · 0 评论
分享