MySQL参数和状态查询

0    194    2

Tags:

👉 本文共约2190个字,系统预计阅读时间或需9分钟。

简介

MySQL的变量分为以下两种:

1)系统变量:配置MySQL服务器的运行环境,可以用show variables查看。

2)状态变量:监控MySQL服务器的运行状态,可以用show status查看。

Mysql参数文件中的参数可以分为2种类型:动态(dynamic)参数和静态参数(staitic)

​ (1)dynamic :可以通过set进行实时修改

​ (2)static,只能在my.cnf里面修改,需要restart生效

动态参数意味着可以在mysql实例运行中进行修改,set global sort_buffer_size=32999999;修改后,别的connection重新进行连接就可以生效了。

生效范围分为:global和session。

静态的说明在整个mysql实例运行期间不得进行修改,就类似一个只读的read only

系统变量

系统变量按其作用域的不同可以分为以下两种:

1)全局(GLOBAL)级:对整个MySQL服务器有效

2)会话(SESSION或LOCAL)级:只影响当前会话

有些变量同时拥有以上两个级别,MySQL将在建立连接时用全局级变量初始化会话级变量,但一旦连接建立之后,全局级变量的改变不会影响到会话级变量。

查看系统变量的值

可以通过show vairables语句查看系统变量的值:

注意:show variables优先显示会话级变量的值,如果这个值不存在,则显示全局级变量的值,当然你也可以加上GLOBAL或SESSION关键字区别:

在写一些存储过程时,可能需要引用系统变量的值,可以使用如下方法:

如果在变量名前没有级别限定符,将优先显示会话级的值。

最后一种查看变量值的方法是从INFORMATION_SCHEMA数据库里的GLOBAL_VARIABLES和SESSION_VARIABLES表获得(在5.7以上需要设置:set global show_compatibility_56=on;)。

设置和修改系统变量的值

在MySQL服务器启动时,有以下两种方法设置系统变量的值:

1)命令行参数,如:mysqld --max_connections=200

2)选项文件(my.cnf)

在MySQL服务器启动后,如果需要修改系统变量的值,可以通过SET语句:

如果在变量名前没有级别限定符,表示修改会话级变量。

本人提供Oracle(OCP、OCM)、MySQL(OCP)、PostgreSQL(PGCA、PGCE、PGCM)等数据库的培训和考证业务,私聊QQ646634621或微信dbaup66,谢谢!
AiDBA后续精彩内容已被站长无情隐藏,请输入验证码解锁本文!
验证码:
获取验证码: 请先关注本站微信公众号,然后回复“验证码”,获取验证码。在微信里搜索“AiDBA”或者“dbaup6”或者微信扫描右侧二维码都可以关注本站微信公众号。

标签:

Avatar photo

小麦苗

学习或考证,均可联系麦老师,请加微信db_bao或QQ646634621

您可能还喜欢...

发表回复