`
king_tt
  • 浏览: 2234243 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

MySQL内存相关的主要变量

 
阅读更多

一、查询缓存

1. 查询缓存命中率计算公式:

Qcache_hits/(Qcache_hits + Com_select)

2. 状态变量

Qcache_hits

查询缓存命中数,即可以从查询缓存中直接返回结果的次数

Qcache_not_cached

不可缓存查询数,current_date等不确定函数或者查询结果大于query_cache_limit使得查询不可缓存

Qcahce_inserts

被加入缓存的查询数,包括新查询或缓存失效后重新被缓存的查询

Qcache_free_blocks

查询缓存中空闲块数,如果此值过高,说明缓存碎片严重

Qcache_lowmem_prunes

因缓存不足导致的缓存失效数

Com_*

Com_delete、Com_insert、Com_update等数据修改操作数,可导致缓存失效

3. 系统变量

query_cache_limit

限制可缓存查询的字节数,查询结果超过此值的查询不可缓存

query_cache_size

为查询缓存分配的总字节数

query_cache_type

0禁用缓存,但并不回收查询缓存区;1启用缓存,除了以 SELECT SQL_NO_CACHE 开头的查询;2只对以 SELECT SQL_CACHE 开头的查询启用缓存


二、MyISAM 键缓存

1. 键缓存命中率:

100 - ( ( Key_reads * 100 ) / Key_read_requests )

2. 键缓存使用百分比:

100 - ( ( Key_blocks_unused * Key_cache_block_size ) * 100 / Key_buffer_size )

3. 状态变量

Key_blocks_unused

未使用的键缓存块数

Key_reads

从磁盘读取键块的次数

Key_read_requests

请求从键缓存读取键块的次数

4. 系统变量

key_buffer_size

键缓存的字节数,最大4G

key_cache_block_size

一个键缓存块的字节数

三、InnoDB 缓冲池

1. 系统变量

innodb_max_dirty_pages_pct

脏页所占缓冲池的百分比,InnoDB 主线程把缓冲池里的脏页写回磁盘,保证脏页所占比例不超过此值

innodb_buffer_pool_size

InnoDB 内存缓冲池字节数

四、线程缓存

1. 状态变量

Threads_created

为连接建立的线程数

2. 系统变量

threads_cache_size

服务器可缓存的线程数。MySQL只有在连接关闭的时候才会把线程加入缓存,也只有在创建新连接的时候才从缓存中移除线程

五、表缓存

1. 系统变量

table_definition_cache

可以缓存的表定义数,此值是全局的,可以在所有连接中共享

table_open_cache

打开表的缓存数,此值是基于每个线程、每个使用的表。当不同的查询同时访问某个表,或者某个查询在子查询或自连接中引用了一个表多次,MySQL 就会认为表被打开了多次。增加此值会要求更多的文件描述符

分享到:
评论

相关推荐

    mysql 系统变量中文详细解释

    在MySQL 5.5版本中,系统变量是配置与运行时环境的重要组成部分,它们控制着服务器的行为、资源分配以及各种性能参数。对于数据库管理员来说,理解这些系统变量的意义及其作用至关重要,这有助于优化数据库性能、...

    MySQL 内存分析

    在进行MySQL内存分析时,首先需要了解MySQL的内存结构和工作机制,这对于优化MySQL的性能至关重要。内存分配问题在容量规划阶段常常被提出,人们会疑惑应该为MySQL以及整个系统分配多少内存。通常互联网上有许多不...

    MySQL优化中的内存计算公式

    本文将详细介绍MySQL内存计算公式,并基于该公式对相关参数进行深入解析。 #### 二、MySQL内存计算公式 根据所提供的内容,MySQL内存占用计算公式如下: \[ \text{MySQLUsedMem} = \text{KeyBufferSize} + \text{...

    MySQL中服务器状态变量全解.pdf

    MySQL服务器维护了一系列状态变量,用以记录和提供有关其运行情况的信息。通过执行`SHOW [GLOBAL | SESSION] STATUS`命令,我们可以查询这些变量及其对应的值。其中: - `GLOBAL`关键字用于显示所有连接的聚合值,...

    MySQL内存管理,内存分配器和操作系统

    在分析和调试过程中,可能需要监控内存使用情况,查看系统级的内存统计,比如使用`top`或`vmstat`命令,同时结合MySQL的性能监控工具,如`SHOW STATUS`和`SHOW VARIABLES`,来追踪内存相关变量的变化。 总的来说,...

    MySQL内存使用调优.doc

    MySQL 手册规定了每个变量的最大值。 单个连接需要的内存MySQL 只需要很少的内存保持连接开启。它也需要一定的基本内存来执行查询。你需要在 MySQL 工作负载处于顶峰的时候为它分配足够的内存,否则查询就会因为...

    MySQL8.4.0 LTS(mysql-8.4.0.zip)

    1. **InnoDB 引擎优化**:InnoDB 作为 MySQL 默认的事务处理引擎,在8.4.0中可能进行了性能提升,包括更快的索引插入、更高效的锁定机制和更好的内存管理。 2. **窗口函数**:MySQL 8.x 引入了 SQL 标准的窗口函数...

    MySQL内存使用之全局共享.pdf

    本文将详细探讨MySQL内存使用中涉及的全局共享部分,如查询缓存(Query Cache)、表缓存(Table Cache)、线程缓存(Thread Cache)、二进制日志缓冲区(Binlog Buffer)以及InnoDB缓冲池(InnoDB Buffer Pool)等。...

    MySQL Internals Manual.pdf

    介绍了主要目录及其功能,例如BUILD目录可能包含了构建过程相关的内容,client目录涉及到客户端相关代码,myisam目录可能关联到MyISAM存储引擎,mysys目录可能与系统级操作有关,sql目录是SQL语句执行相关的,而vio...

    mysql 5.5版 头文件(mysql.h等)

    4. `mysql_com.h`:包含了MySQL通信协议的相关定义,如MySQL命令类型、状态变量、预处理语句和结果集的定义。这些定义对于理解MySQL如何通过网络传输数据至关重要。 5. `mysql_time.h`:提供了日期和时间类型,如`...

    2021年MySQL高级教程视频.rar

    17.MySQL高级存储过程语法变量.avi 18.MySQL高级存储过程语法if判断.avi 19.MySQL高级存储过程语法输入参数.avi 20.MySQL高级存储过程语法输出参数.avi 21.MySQL高级存储过程语法case结构.avi 22.MySQL高级存储过程...

    mysql常用配置参数和状态变量

    mysql 常用配置参数和状态变量 mysql 作为一个流行的开源关系数据库管理系统,提供了许多配置参数和状态变量,以便用户根据实际情况进行调整和优化。下面我们将详细介绍一些常用的 mysql 配置参数和状态变量。 一...

    MySQL内存表的特性与使用介绍

    MySQL内存表,也称为HEAP表,是一种存储引擎,它将数据存储在内存中,以实现快速的读写操作。这种类型的表对于处理大量小规模数据的查询特别有用,因为它们能够利用内存的高速访问来提升性能。在MySQL中,内存表的...

    MySQL 相关的环境变量

    MySQL环境变量是用于配置和影响MySQL客户端和服务器行为的变量。这些变量在操作系统层面定义,可以调整MySQL客户端的连接方式、历史记录存储以及与服务器交互的方式。以下是一些重要的MySQL环境变量的详细说明: 1....

    CentOS7 安装JDK8 + MySQL8 + Tomcat9并配置环境变量.pdf

    本文将详细介绍如何在CentOS7上安装JDK8、MySQL8和Tomcat9,并配置相应的环境变量。 首先,我们开始安装JDK1.8。Oracle官网提供了JDK的下载链接,通常为tar.gz格式的压缩包。你需要在你的本地计算机上下载对应版本...

    RedHat 7.9安装MySQL 8.0 MGR

    首先,我们需要了解 MySQL 8.0 MGR 的系统要求,包括操作系统、内存、磁盘空间和网络连接等。其次,我们需要了解 MySQL 8.0 MGR 的安装目录结构和配置文件的位置。 安装 MySQL 单实例 在安装 MySQL 8.0 MGR 之前,...

    MySql 5.1 参考手册.chm

    1.4.2. MySQL的的主要特性 1.4.3. MySQL稳定性 1.4.4. MySQL表最大能达到多少 1.4.5. 2000年兼容性 1.5. MaxDB数据库管理系统概述 1.5.1. 什么是MaxDB? 1.5.2. MaxDB的历史 1.5.3. MaxDB的特性 1.5.4. 许可和支持 ...

    mysql全局变量详解[收集].pdf

    MySQL全球变量是数据库管理系统中的关键元素,它们定义了MySQL服务器的行为和配置参数。这些变量可以在全局范围内设置,影响整个数据库实例,或者在会话级别设置,只影响特定用户连接。以下是一些重要的MySQL全局...

Global site tag (gtag.js) - Google Analytics