MySql服务器系统变量和状态变量介绍

 更新时间:2014年12月01日 13:01:51   投稿:junjie  
这篇文章主要介绍了MySql服务器系统变量和状态变量介绍,本文分别讲解了它们的作用、设置方法和获取方法,需要的朋友可以参考下

服务器系统变量

服务器将维护许多表示其配置的系统变量。所有变量均有默认值。可以在命令行中或选项文件设置选项在服务器启动时对它们进行设置。大多数可以在运行时使用SET语句来设置。

mysqld服务器维护两种变量。全局变量影响服务器的全局操作。会话变量影响具体客户端连接相关操作。

服务器启动时,将所有全局变量初始化为默认值。可以在选项文件或命令行中指定的选项来更改这些默认值。服务器启动后,通过连接服务器并执行SET GLOBAL var_name语句可以更改动态全局变量。要想更改全局变量,必须具有SUPER权限。

服务器还为每个客户端连接维护会话变量。连接时使用相应全局变量的当前值对客户端会话变量进行初始化。客户可以通过SET SESSION var_name语句来更改动态会话变量。设置会话变量不需要特殊权限,但客户可以只更改自己的会话变量,而不更改其它客户的会话变量。

任何访问全局变量的客户端都可以看见对全局变量的更改。但是,它只影响在更改后连接的从该全局变量初始化相应会话变量的客户端。它不会影响已经连接上的客户端的会话变量(甚至是执行SET GLOBAL语句的客户端)。

要想显式指定是否设置全局或会话变量,使用GLOBAL或SESSION选项:

复制代码 代码如下:

mysql> SET GLOBAL sort_buffer_size = 10 * 1024 * 1024;
mysql> SET SESSION sort_buffer_size = 10 * 1024 * 1024;

两个选项均没有,则语句设置会话变量。

你可以通过SHOW VARIABLES语句查看系统变量及其值。

复制代码 代码如下:

mysql> SHOW VARIABLES;
+---------------------------------+-------------------------------------------+
| Variable_name                   | Value                                     |
+---------------------------------+-------------------------------------------+
| auto_increment_increment        | 1                                         |
| auto_increment_offset           | 1                                         |
....

若没有另行规定,缓冲区大小、长度和堆栈大小的单位均为字节。

更多参考 http://dev.mysql.com/doc/refman/5.1/zh/database-administration.html#server-system-variables

服务器状态变量

服务器维护许多提供操作相关信息的状态变量。你可以通过SHOW STATUS语句查看这些变量和它们的值:

复制代码 代码如下:

mysql> SHOW STATUS;
+-----------------------------------+------------+
| Variable_name                     | Value      |
+-----------------------------------+------------+
| Aborted_clients                   | 0          |
| Aborted_connects                  | 0          |
| Bytes_received                    | 155372598  |
| Bytes_sent                        | 1176560426 |
 

 
| Connections                       | 30023      |
| Created_tmp_disk_tables           | 0          |
| Created_tmp_files                 | 3          |
| Created_tmp_tables                | 2          |
 

 
| Threads_created                   | 217        |
| Threads_running                   | 88         |
| Uptime                            | 1389872    |
+-----------------------------------+------------+

用FLUSH STATUS语句可以将许多状态变量重设为0。

更多参考 http://dev.mysql.com/doc/refman/5.1/zh/database-administration.html#server-status-variables

相关文章

  • MySQL中的隐藏列的具体查看

    MySQL中的隐藏列的具体查看

    mysql中存在一些隐藏列,例如行标识、事务ID、回滚指针等,不知道大家是否和我一样好奇过,要怎样才能实际地看到这些隐藏列的值呢,感兴趣的可以了解一下
    2021-09-09
  • windows下mysql 8.0.27 安装配置图文教程

    windows下mysql 8.0.27 安装配置图文教程

    这篇文章主要为大家详细介绍了windows下mysql 8.0.27 安装配置图文教程,文中安装步骤介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-06-06
  • mysql把一段数据变成一个临时表

    mysql把一段数据变成一个临时表

    这篇文章主要介绍了mysql把一段数据变成一个临时表,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-02-02
  • DDL数据库与表的创建和管理深入讲解使用教程

    DDL数据库与表的创建和管理深入讲解使用教程

    这篇文章主要介绍了DDL数据库与表的创建和管理,系统架构的层面来看,数据库从大到小依次是数据库服务器(上面安装了DBMS和数据库)、数据库(也称database或者schema)、数据表、数据表的行与列
    2023-04-04
  • mysql 正则表达式查询含有非数字和字符的记录

    mysql 正则表达式查询含有非数字和字符的记录

    这篇文章主要介绍了mysql 正则表达式查询含有非数字和字符的记录的相关资料,需要的朋友可以参考下
    2016-12-12
  • MySql常用查询命令操作大全

    MySql常用查询命令操作大全

    本文给大家收集整理了MySql常用查询命令操作大全,非常不错,具有参考借鉴价值,需要的朋友参考下吧
    2017-11-11
  • MySQL批量插入遇上唯一索引避免方法

    MySQL批量插入遇上唯一索引避免方法

    以前使用SQL Server进行表分区的时候就碰到很多关于唯一索引的问题,今天我们来了解MySQL唯一索引的一些知识:包括如何创建,如何批量插入,还有一些技巧上SQL,感兴趣的朋友可以了解下
    2013-01-01
  • Mysql分区表的管理与维护

    Mysql分区表的管理与维护

    改变一个表的分区方案只需使用alter table 加 partition_options 子句就可以了。这篇文章主要介绍了Mysql分区表的管理与维护,非常不错,感兴趣的朋友一起学习吧,需要的朋友可以参考下
    2016-08-08
  • MySQL主键自增会遇到的坑及解决方法

    MySQL主键自增会遇到的坑及解决方法

    主键不用随机字符串用什么?主键自增?主键自增就是最佳方案吗?有没有其他坑?今天我们就来讨论下这个话题,感兴趣的小伙伴可以收藏一下
    2023-04-04
  • MYSQL ZIP免安装版配置步骤及图形化管理工具mysql-workbench

    MYSQL ZIP免安装版配置步骤及图形化管理工具mysql-workbench

    在 windows7 64位操作系统下配置mysql-5.5.25-winx64 (免安装版),记录步骤如下
    2014-03-03

最新评论