随笔 - 150, 文章 - 0, 评论 - 11, 阅读 - 18万
  博客园  :: 首页  :: 新随笔  :: 订阅 订阅  :: 管理
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

随笔分类 -  mysql

摘要:解决死锁之路(终结篇) - 再见死锁 在前面的几篇博客中,我们学习了事务,隔离级别,各种锁类型,以及各种 SQL 语句的加锁原理,这一系列的知识学习下来,断断续续,竟然已经过去了大半年的时间。随着对数据库原理的学习越来越深入,越发现一发不可收拾,这里面的水实在是太深了。这是这个系列的最后一篇,也让我 阅读全文

posted @ 2022-08-22 16:09 面具下的戏命师 阅读(904) 评论(0) 推荐(0) 编辑

摘要:解决死锁之路 - 常见 SQL 语句的加锁分析 这篇博客将对一些常见的 SQL 语句进行加锁分析,看看我们平时执行的那些 SQL 都会加什么锁。只有对我们所写的 SQL 语句加锁过程了如指掌,才能在遇到死锁问题时倒推出是什么锁导致的问题。在前面的博客中我们已经学习了 MySQL 下不同的锁模式和锁类 阅读全文

posted @ 2022-08-22 16:01 面具下的戏命师 阅读(362) 评论(0) 推荐(0) 编辑

摘要:解决死锁之路 - 学习事务与隔离级别 上个月在查看线上错误日志的时候,偶然发现了下面这样的异常,异常发生的次数并不是很多,但是可以看出几乎每天都有那么几次。看异常信息就知道是发生了数据库死锁,由于对这块不是很了解,加上这个异常对系统业务没有啥大的影响,所以就一直拖了一个月的时间。最近实在忍不住,于是 阅读全文

posted @ 2022-08-22 13:45 面具下的戏命师 阅读(379) 评论(0) 推荐(0) 编辑

摘要:pt-heartbeat 监控 MySQL主从延迟 mysql 在进行主从同步时,从库需要拉取主库的 binlog 进行 sql 回放,因此理论上只要主库存在数据更新,就一定存在主从延迟。mysql 提供了Seconds_Behind_Master 参数来计算主从延迟。但是Seconds_Behin 阅读全文

posted @ 2022-08-18 19:36 面具下的戏命师 阅读(150) 评论(0) 推荐(0) 编辑

摘要:MySQL慢日志相关配置参数 mysql数据库的配置参数log_queries_not_using_indexes的作用是控制未使用索引的查询是否写入慢日志。 背景 在一次项目上线后,监控平台马上收到大量报警。报警内容均是业务存在大量慢sql。将报警sql取出进行分析,发现这些sql运行效率并不低。 阅读全文

posted @ 2022-01-17 15:03 面具下的戏命师 阅读(3662) 评论(0) 推荐(0) 编辑

摘要:MySQL XA事务 事务是数据库区别于文件系统的重要特性之一。事务会把数据库从一种一致性状态转换为另外一种一致性状态,在数据库提交时,要么确认所有修改都已经保存了,要么所有修改都不保存。InnoDB存储引擎完全满足ACID特性。其中隔离性通过锁实现,事务的原子性和持久性通过redo log实现,u 阅读全文

posted @ 2021-02-19 14:06 面具下的戏命师 阅读(402) 评论(0) 推荐(0) 编辑

摘要:MySQL 统计信息 MySQL执行SQL会经过SQL解析和查询优化的过程,解析器将SQL分解成数据结构并传递到后续步骤,查询优化器发现执行SQL查询的最佳方案、生成执行计划。查询优化器决定SQL如何执行,依赖于数据库的统计信息,下面我们介绍MySQL 5.7中innodb统计信息的相关内容。 My 阅读全文

posted @ 2021-01-13 11:03 面具下的戏命师 阅读(205) 评论(0) 推荐(0) 编辑

摘要:MySQL数据库之rowid 在oracle数据库中,表默认以堆表的形式存储。表中的每一行数据都有一个唯一的标识符称为rowid,rowid标识了该行在oracle数据库中的物理位置。在MySQL数据库中也有rowid的概念。但是MySQL与oracle不同的是,MySQL的InnoDB引擎默认采用 阅读全文

posted @ 2020-12-24 21:24 面具下的戏命师 阅读(10512) 评论(0) 推荐(1) 编辑

摘要:MySQL查询缓存 MySQL Query Cache 就是用来缓存和 Query 相关的数据的。具体来说,Query Cache 缓存了我们客户端提交给 MySQL 的 SELECT 语句以及该语句的结果集。大概来讲,就是将 SELECT 语句和语句的结果做了一个 HASH 映射关系然后保存在一定 阅读全文

posted @ 2020-05-18 14:48 面具下的戏命师 阅读(426) 评论(1) 推荐(0) 编辑

摘要:MySQL 临时表 MySQL提供临时表功能,在保存一些临时数据是非常有用的。临时表只在当前连接可见,当连接关闭时,MySQL会自动删除表并释放空间。当然也可以手动删除临时表 MySQL数据库的临时表分两种:内部临时表和外部临时表。 外部临时表 外部临时表指的是通过 CREATE TEMPORARY 阅读全文

posted @ 2020-05-12 15:48 面具下的戏命师 阅读(440) 评论(0) 推荐(0) 编辑

摘要:MySQL索引提示 SQL提示,是优化数据库的一个重要手段,简单来说,就是在SQL语句中加入一些人为的提示来达到优化操作的目的。MySQL数据库支持索引提示(INDEX HINT)显式的告诉优化器使用了哪个索引。有以下几种情况可能用到索引提示: 1、MySQL数据库的优化器错误的选择了某个索引,导致 阅读全文

posted @ 2020-05-11 16:10 面具下的戏命师 阅读(492) 评论(0) 推荐(0) 编辑

摘要:MySQL SQL trace 推荐一篇博客:http://blog.itpub.net/28218939/viewspace-2658978/ 介绍的很详细 从 MySQL 5.6 开始,可以使用 trace 查看优化器如何选择执行计划,通过SQL trace来跟踪sql语句的执行过程。通过tra 阅读全文

posted @ 2020-05-09 16:29 面具下的戏命师 阅读(947) 评论(0) 推荐(0) 编辑

摘要:MySQL派生表 派生表是查询结果组成的虚拟表。派生表是在外部查询的FROM子句中定义的,不需要手动创建。只要外部查询一结束,派生表也就不存在了。派生表可以简化查询,避免使用临时表。相比手动生成临时表性能更优越。 例如: SELECT * FROM ( SELECT * FROM t1 ) tmp 阅读全文

posted @ 2020-05-07 14:58 面具下的戏命师 阅读(782) 评论(0) 推荐(0) 编辑

摘要:MySQL大小写敏感问题 本文档适用于Linux平台(红帽6,MySQL5.7.24),windows和mac不建议参考 MySQL数据库在Linux平台默认是区分大小写,这和windows不一致。大小写敏感包括库名、表名、字段名、别名、字段内容、变量等。在Linux服务上,MySQL提供了配置参数 阅读全文

posted @ 2020-04-20 12:45 面具下的戏命师 阅读(2200) 评论(0) 推荐(0) 编辑

摘要:MySQL InnoDB表介绍 一、索引组织表 在InnoDB引擎中,表都是根据主键顺序存放的。这种存储方式称为索引组织表,在InnoDB引擎中,每张表都有逐渐。如果没有显示定义主键,则引擎会按照以下方式选择或创建主键。 (1)、判断表是否有非空唯一索引,如果有,则该字段为主键。如果有多个非空唯一索 阅读全文

posted @ 2019-03-18 18:10 面具下的戏命师 阅读(263) 评论(0) 推荐(0) 编辑

摘要:InnoDB存储引擎文件 MySQL数据库包括数据库本身的文件和存储引擎文件。数据库自身的文件由参数文件(my.cnf)、错误日志文件、慢查询日志文件、查询日志文件、二进制日志文件、套接字文件、pid文件、表结构定义文件(tabname.frm) 和InnoDB存储引擎相关的文件有表空间文件和重做日 阅读全文

posted @ 2019-01-18 10:12 面具下的戏命师 阅读(664) 评论(0) 推荐(0) 编辑

摘要:InnoDB引擎架构介绍 innodb存储引擎的体系架构,可简单划分成三层: 数据文件 :磁盘上的数据文件 内存池:缓存磁盘上的数据,方便读取,同时在对磁盘文件数据修改之前在这里缓存,然后按一定规刷新到磁盘 后台线程:主要负责刷新内存池中的数据,保证内存池中都是最近数据。同时将内存中修改的数据刷新到 阅读全文

posted @ 2019-01-17 16:11 面具下的戏命师 阅读(446) 评论(0) 推荐(0) 编辑

摘要:mysql存储引擎介绍 什么是存储引擎? MySQL中的数据用各种不同的技术存储在文件(或者内存)中。这些技术中的每一种技术都使用不同的存储机制、索引技巧、锁定水平并且最终提供广泛的不同的功能和能力。通过选择不同的技术,你能够获得额外的速度或者功能,从而改善你的应用的整体功能。例如,如果你在研究大量 阅读全文

posted @ 2019-01-16 21:17 面具下的戏命师 阅读(183) 评论(0) 推荐(0) 编辑

摘要:MySQL体系架构 学习一门数据库系统首先得了解它的架构,明白它的架构原理对于后期的分析问题和性能调优都有很大的帮助,接下来就通过分析架构图来认识它。 数据库:物理操作系统文件或者其它文件的集合,在mysql中,数据库文件可以是frm、myd、myi、ibd等结尾的文件,当使用NDB存储引擎时候,不 阅读全文

posted @ 2019-01-16 17:34 面具下的戏命师 阅读(165) 评论(0) 推荐(0) 编辑

摘要:MySQL状态变量详解 mysql的状态变量(status variables)记录的mysql服务器的运行状态信息。查看语法如下: SHOW STATUS命令会显示每个服务器变量的名字和值,状态变量是只读的。我们可以在MySQL客户端下运行SHOW STATUS或者在命令行运用mysqladmin 阅读全文

posted @ 2019-01-12 20:49 面具下的戏命师 阅读(1522) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示