mysql
文章平均质量分 92
mysql
伊布拉西莫
思想上的强者,行动上的弱者。
展开
-
MySQL实战45讲-39 | 自增主键为什么不是连续的?
极客学院-《MySQL实战45讲》 学习笔记转载 2022-05-01 09:05:00 · 250 阅读 · 0 评论 -
MySQL实战45讲-09 | 普通索引和唯一索引,应该怎么选择?
极客学院-《MySQL实战45讲》 学习笔记转载 2022-04-01 10:56:06 · 341 阅读 · 0 评论 -
MySQL实战45讲-08 | 事务到底是隔离的还是不隔离的?
极客学院-《MySQL实战45讲》 学习笔记如果是可重复读隔离级别,事务 T 启动的时候会创建一个视图 read-view,之后事务 T 执行期间,即使有其他事务修改了数据,事务 T 看到的仍然跟在启动时看到的一样。问题一个事务A要更新一行,如果刚好有另外一个事务B拥有这一行的行锁,那么事务A会被锁住,进入等待状态。问题是,当事务B提交后,事务A获取到该行数据时,它读到的值又是什么呢?我给你举一个例子吧。下面是一个只有两行的表的初始化语句。mysql> CREATE TABLE `t.转载 2022-03-31 17:06:23 · 163 阅读 · 0 评论 -
MySQL实战45讲-07 | 行锁功过:怎么减少行锁对性能的影响?
极客学院-《MySQL实战45讲》 学习笔记MySQL 的行锁是在引擎层由各个引擎自己实现的。但并不是所有的引擎都支持行锁.不支持行锁意味着并发控制只能使用表锁。顾名思义,行锁就是针对数据表中行记录的锁。从两阶段锁说起举个例子事务 B 的 update 语句会被阻塞,直到事务 A 执行 commit 之后,事务 B 才能继续执行。两阶段锁协议在 InnoDB 事务中,行锁是在需要的时候才加上的,但并不是不需要了就立刻释放,而是要等到事务结束时才释放。这个就是两阶段锁协议。如果你的.转载 2022-03-31 10:22:17 · 174 阅读 · 0 评论 -
MySQL实战45讲-03 | 事务隔离:为什么你改了我还看不见?
极客学院-《MySQL实战45讲》 学习笔记03 | 事务隔离:为什么你改了我还看不见?隔离性与隔离级别ACID(Atomicity、Consistency、Isolation、Durability,即原子性、一致性、隔离性、持久性)事务隔离级别当数据库上有多个事务同时执行的时候,就可能出现脏读(dirty read)、不可重复读(non-repeatable read)、**幻读(phantom read)**的问题,为了解决这些问题,就有了“隔离级别”的概念。在谈隔离级别之前,你首先要知.转载 2022-03-28 21:43:50 · 202 阅读 · 0 评论 -
MySQL processlist的state属性详解
转载自 https://learn.blog.csdn.net/article/details/98624463mysql官方STATEstate属性是processlist中分析性能的关键部分。通过官方对不同状态的解释,可以判断sql执行时的底层运作,进而定位到深层的问题,比如网络吞吐量不够、磁盘I/O压力过大、CPU计算较多、内存紧张等瓶颈。再结合processlist.info的explain结果,问题就可以定位到结果集过大、索引不理想检索行过多、排序较多、临时表过多过大的问题。对ST.转载 2022-03-11 15:42:03 · 1088 阅读 · 0 评论 -
canal-使用-总结
typora-root-url: imagesAdminGuideCanal-Admin-Guide简介canal [kə’næl],译意为水道/管道/沟渠,主要用途是基于 MySQL 数据库增量日志解析,提供增量数据订阅和消费。工作原理canal 模拟 MySQL slave 的交互协议,伪装自己为 MySQL slave ,向 MySQL master 发送 dump 协议MySQL master 收到 dump 请求,开始推送 binary log 给 slave (即 canal.原创 2021-06-06 00:08:40 · 266 阅读 · 2 评论 -
MySQL执行计划extra中的using index 和 using where using index 的区别
引用: MySQL执行计划extra中的using index 和 using where using index 的区别测试环境搭建测试表以及测试数据搭建,类似于订单表和订单明细表,暂时先用订单表做测试表结构create table test_order( id int auto_increment primary key, user_id int, order_id int, order_status tinyint, create_date dat.翻译 2020-09-09 15:13:50 · 1336 阅读 · 4 评论 -
MySQL-02-2-SQL优化步骤+慢SQL分析
【黑马程序员】2020最新MySQL高级教程 学习笔记优化SQL步骤在应用的的开发过程中,由于初期数据量小,开发人员写 SQL 语句时更重视功能上的实现,但是当应用系统正式上线后,随着生产数据量的急剧增长,很多 SQL 语句开始逐渐显露出性能问题,对生产的影响也越来越大,此时这些有问题的 SQL 语句就成为整个系统性能的瓶颈,因此我们必须要对它们进行优化。当面对一个有 SQL 性能问题的...原创 2020-06-04 14:48:50 · 483 阅读 · 0 评论 -
mysql列转多行
初始化数据执行初始化数据脚本。create view v1 as select '张三' as name unionselect '李四,张三' as name unionselect '张三,王五,刘六' as name;执行查询sql:select * from v1;,结果如下:需求需要统计所有的DISTINCT name.思路需要将带有,分隔的行的数据转换为多行...原创 2020-03-10 15:34:53 · 523 阅读 · 0 评论 -
mysql 开窗函数
场景1: 取max表结构create table tb_test_info( student_id char(4) comment '学号', grade_id int comment '课程号', score int comment '分数', primary key (student_id,grade_id));insert into tb_test_info(studen...原创 2020-02-20 16:16:23 · 1400 阅读 · 0 评论 -
mysql创建数据库、用户、授权
创建数据库并指定字符集> CREATE DATABASE `rms_dev` CHARACTER SET utf8 COLLATE utf8_general_ci;### 查看结果> show databases创建用户### @localhost 只允许本机访问 > grant all privileges on rms_dev.* to rms@localh...原创 2020-01-06 15:00:35 · 1931 阅读 · 0 评论 -
Mysql递归查询
最近新项目使用改用Mysql,遇到了一个递归查询的问题,查阅资料后,发现mysql并没有类似orcale的connect by递归查询的方法。 关于oracle的查询, 可以查看我的另一篇博文: https://blog.csdn.net/it_freshman/article/details/78526871查阅资料,发现大致有两种解决思路:使用function使用p...原创 2018-05-04 17:30:17 · 806 阅读 · 0 评论