
MYSQL
文章平均质量分 56
佐杰
这个作者很懒,什么都没留下…
展开
-
docker 版 mysql 主从同步
【代码】docker 版 mysql 主从同步。原创 2024-05-18 18:10:36 · 903 阅读 · 0 评论 -
Explain执行计划中各个字段的含义
7.possible_keys:表示在MySQL中通过哪些索引,能让我们在表中找到想要的记录,一旦查询涉及到的某个字段上存在索引,则索引将被列出,但这个索引并不定一会是最终查询数据时所被用到的索引。8.key:区别于possible_keys,key是查询中实际使用到的索引,若没有使用索引,显示为NULL。table 查询的表名,并不一定是真实存在的表,有别名显示别名,也可能为临时表,例如上边的DERIVED、 <union1,4>等。10.ref:常见的有:const,func,null,字段名。原创 2023-07-18 16:23:07 · 955 阅读 · 0 评论 -
mysql索引之B-Tree和B+Tree
B-Tree1.特点叶子节点具有相同的深度,叶节点的指针为空所有索引元素不重复节点中的数据索引从左到右递增排列B+Tree特点1、非叶子节点不存储data,只存储索冗余,可以放更多的所用2、叶子节点包含所有索引字段3、叶子节点用指针连接、提高区间访问性能...原创 2021-05-03 15:43:31 · 201 阅读 · 0 评论 -
redo log的刷盘策略
redo log刷盘策略的关键参数是innodb_flush_log_at_trx_commit这个参数有3个值 0 、1、2当参数设置我0的时候 是不刷入磁盘。当参数设置为1的时候,刷入磁盘当参数设置为2的时候,先写入os cache1秒之后再写入磁盘。...原创 2021-01-13 22:30:01 · 499 阅读 · 0 评论 -
一不小心走光了,和浩宸聊一聊数据库的锁。
一不小心走光了,和浩宸聊一聊数据库的锁。引入背景为什么要引入锁锁的分类全局锁表锁,元数据锁(meta data lock)引入背景周六,浩宸在卫生间洗澡,然后我没注意,一下推门进去了,浩宸这样走光了,场面顿时尴尬。原来是锁坏了。这时候就提现了锁的重要性。为什么要引入锁在日常生活中,我们会共享卫生间,关门上锁可以保护我们的隐私。在数据库中锁同样是为并发所设计的。使用锁可以保证线程的安全性。锁的分类锁按粒度可以分为! 全局锁!! 表锁 , 元数据锁(meta data lock)!!! 行锁原创 2020-07-28 16:49:53 · 281 阅读 · 0 评论 -
数据库索引
数据库索引背景什么是索引索引的常见模型哈希表有序数组搜索树背景在日常工作中,我们经常会遇到sql查询慢的问题。大部分情况下,分析之后得出的解决方案都是“给某个字段”加个索引吧。什么是索引索引其实就是一个文件,索引的出现是为了提高数据的查询效率,就像书的目录一样。索引的常见模型哈希表 ,有序数组,搜索树哈希表有序数组搜索树...原创 2020-07-07 12:25:11 · 149 阅读 · 0 评论 -
一条sql更新语句是如何执行的?
一条sql更新语句是如何执行的重要的日志模块 :redo log重要日志模块 binlog之前经常听DBA的同事说,mysql可以恢复到半个月内任意1秒的状态,惊叹的同时,你是不是你不免有一些好奇,这是怎么做到的呢?我们还是从一张表的一条更新语句说起,下面是这个表的创建语句,这个表有一个主键ID和一个整型字段Cmysql> create table T (ID int primary ...原创 2020-05-04 12:42:05 · 972 阅读 · 0 评论 -
count(*)、count(1)和count(列名)的区别
count(*)、count(1)和count(列名)的区别1、执行效果上:l count(*)包括了所有的列,相当于行数,在统计结果的时候,不会忽略列值为NULLl count(1)包括了忽略所有列,用1代表代码行,在统计结果的时候,不会忽略列值为NULLl count(列名)只包括列名那一列,在统计结果的时候,会忽略列值为空(这里的空不是只空字符串或者0,而是表示null)的计数...原创 2019-11-20 13:56:30 · 222 阅读 · 0 评论 -
linux中mysql解决乱码问题
linux中mysql解决乱码问题问题如下解决方式问题如下解决方式第一步先查看mysql的编码格式show variables like 'character%'问题在于默认的客户端和服务器端 都默认的使用了 latin1的编码格式解决方式如下在mysql下执行SET character_set_database = utf8;SET character_set_serve...原创 2019-07-25 00:14:44 · 213 阅读 · 0 评论 -
mysql调优之慢查询
mysql调优之慢查询什么是慢查询show status命令的介绍如何修改慢查询如何将慢查询定位到日志中什么是慢查询mysql有一个默认的规定 只要10秒钟没有按照规定的时间返回结果都属于慢查询。存放到一个日志中。(默认是没有日志记录的,需要自己去配置慢查询日志记录)慢查询日志的作用:它会把慢查询的sql语句,都会存放在日志中。show status命令的介绍show status li...原创 2019-07-11 23:03:24 · 194 阅读 · 0 评论 -
一条sql查询语句是如何执行的
如图所示select * from table where ID=1这条sql在数据库中如何执行mysql的基本架构图大体上Mysql可以分为Server层和存储引擎层两部分存储引擎层负责数据的存取,其架构模式是插件式的,支持InniDB,MylSAM,Memory等多个存储引擎,它从Mysql 5.5.5版本开始成为了默认存储引擎。在执行create table创建表的时候,如果...翻译 2019-04-24 21:59:46 · 2168 阅读 · 0 评论