我的编程空间,编程开发者的网络收藏夹
学习永远不晚

mysql关于variable知识点有哪些

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

mysql关于variable知识点有哪些

这篇文章主要讲解了“mysql关于variable知识点有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“mysql关于variable知识点有哪些”吧!

1、MySQL的my.cnf文件类似Oracle的参数文件,可以把它理解成oracle的pfile静态参数文件

2、MySQL可以使用set命令动态的修改变量,修改session变量只对当前会话产生影响;修改global变量,对所有新会话的global变量、session变量(特殊情况除外,比如wait_timeout变量)产生影响

3、set命令修改的变量不会写入my.cnf文件,DB重启的话之前set修改的变量就失效了,想要永久生效,就把变量写入到my.cnf文件

4、只读变量,不能使用set修改,只能通过修改my.cnf文件再重启生效

5、全局(GLOBAL)级变量对整个MySQL服务器有效;会话(SESSION)级变量只影响当前会话。有些变量同时拥有这两个级别,MySQL将在建立连接时用全局级变量初始化会话级变量,但一旦连接建立之后,全局级变量的改变不会影响到会话级变量

6、可以把全局(GLOBAL)级变量理解成oracle的system参数,会话(SESSION)级变量理解成oracle的session参数

7、mysql没有类似oracle的create pfile from memory保存所有内存的中参数值的功能,mysql如果要保存所有修改的参数但是没有写入my.cnf的方法,就是select * from INFORMATION_SCHEMA.GLOBAL_VARIABLES查询出来并保存

查看系统变量的值

方法1

mysql> show variables like '%wait_timeout%';  

mysql> show global variables like '%wait_timeout%'; 

mysql> show session variables like '%wait_timeout%'; 

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

方法2

mysql> set global show_compatibility_56=on;

mysql> select * from INFORMATION_SCHEMA.GLOBAL_VARIABLES where variable_name like '%wait_timeout%'

mysql> select * from INFORMATION_SCHEMA.SESSION_VARIABLES where variable_name like '%wait_timeout%'

修改系统变量的值

mysql> set wait_timeout = xxx;

mysql> set global wait_timeout = yyy;

只读系统标量,不能使用set修改

mysql> show variables like 'log_bin';

+---------------+-------+

| Variable_name | Value |

+---------------+-------+

| log_bin       | ON    |

+---------------+-------+

1 row in set (0.00 sec)

mysql> set log_bin=off;

ERROR 1238 (HY000): Variable 'log_bin' is a read only variable

只有全局变量,没有会话变量

全局变量修改的时候,其他新开会话的会话变量和全局变量都是修改后的值

会话1

mysql> show variables like 'server_id';

+---------------+-------+

| Variable_name | Value |

+---------------+-------+

| server_id     | 1     |

+---------------+-------+

mysql> set server_id=2;

ERROR 1229 (HY000): Variable 'server_id' is a GLOBAL variable and should be set with SET GLOBAL

mysql> set GLOBAL server_id=2;

mysql> show variables like 'server_id';

+---------------+-------+

| Variable_name | Value |

+---------------+-------+

| server_id     | 2     |

+---------------+-------+

mysql> show global variables like 'server_id';

+---------------+-------+

| Variable_name | Value |

+---------------+-------+

| server_id     | 2     |

+---------------+-------+

打开另一个会话

全局变量修改的时候,其他新开会话的会话变量和全局变量都是修改后的值

mysql> show variables like 'server_id';

+---------------+-------+

| Variable_name | Value |

+---------------+-------+

| server_id     | 2     |

+---------------+-------+

mysql> show global variables like 'server_id';

+---------------+-------+

| Variable_name | Value |

+---------------+-------+

| server_id     | 2     |

+---------------+-------+

有全局变量,也有会话变量

会话变量修改的时候,不影响本身的全局变量,也不影响其他新开会话的会话变量和全局变量

全局变量修改的时候,其他新开会话的会话变量和全局变量都是修改后的值

会话1

mysql> show variables like 'read_buffer_size';

+------------------+--------+

| Variable_name    | Value  |

+------------------+--------+

| read_buffer_size | 131072 |

+------------------+--------+

mysql> show global variables like 'read_buffer_size';

+------------------+--------+

| Variable_name    | Value  |

+------------------+--------+

| read_buffer_size | 131072 |

+------------------+--------+

mysql> set read_buffer_size=212992;

mysql> show variables like 'read_buffer_size';

+------------------+--------+

| Variable_name    | Value  |

+------------------+--------+

| read_buffer_size | 212992 |

+------------------+--------+

mysql> show global variables like 'read_buffer_size';

+------------------+--------+

| Variable_name    | Value  |

+------------------+--------+

| read_buffer_size | 131072 |

+------------------+--------+

打开另一个会话2

会话变量修改的时候,不影响本身的全局变量,也不影响其他新开会话的会话变量和全局变量

mysql> show variables like 'read_buffer_size';

+------------------+--------+

| Variable_name    | Value  |

+------------------+--------+

| read_buffer_size | 131072 |

+------------------+--------+

mysql> show global variables like 'read_buffer_size';

+------------------+--------+

| Variable_name    | Value  |

+------------------+--------+

| read_buffer_size | 131072 |

+------------------+--------+

会话1继续如下

mysql> set global read_buffer_size=16384;

mysql> show variables like 'read_buffer_size';

+------------------+--------+

| Variable_name    | Value  |

+------------------+--------+

| read_buffer_size | 212992 |

+------------------+--------+

mysql> show global variables like 'read_buffer_size';

+------------------+-------+

| Variable_name    | Value |

+------------------+-------+

| read_buffer_size | 16384 |

+------------------+-------+

打开另一个会话3

全局变量修改的时候,其他新开会话的会话变量和全局变量都是修改后的值

mysql> show variables like 'read_buffer_size';

+------------------+-------+

| Variable_name    | Value |

+------------------+-------+

| read_buffer_size | 16384 |

+------------------+-------+

mysql> show global variables like 'read_buffer_size';

+------------------+-------+

| Variable_name    | Value |

+------------------+-------+

| read_buffer_size | 16384 |

+------------------+-------+

重启之后

重启之后,所有的set修改的变量值都不在了,回到了初始值

mysql> show variables like 'server_id';

+---------------+-------+

| Variable_name | Value |

+---------------+-------+

| server_id     | 1     |

+---------------+-------+

mysql> show global variables like 'server_id';

+---------------+-------+

| Variable_name | Value |

+---------------+-------+

| server_id     | 1     |

+---------------+-------+

mysql> show variables like 'read_buffer_size';

+------------------+--------+

| Variable_name    | Value  |

+------------------+--------+

| read_buffer_size | 131072 |

+------------------+--------+

mysql> show global variables like 'read_buffer_size';

+------------------+--------+

| Variable_name    | Value  |

+------------------+--------+

| read_buffer_size | 131072 |

+------------------+--------+

感谢各位的阅读,以上就是“mysql关于variable知识点有哪些”的内容了,经过本文的学习后,相信大家对mysql关于variable知识点有哪些这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

mysql关于variable知识点有哪些

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

关于Java8的知识点有哪些

这篇文章主要讲解了“关于Java8的知识点有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“关于Java8的知识点有哪些”吧!在了解一项新技术之前,我们需要了解我们为什么要去学习它以及它的
2023-06-16

关于Java IO的知识点有哪些

本篇内容主要讲解“关于Java IO的知识点有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“关于Java IO的知识点有哪些”吧!传统的 BIOJava IO流是一个庞大的生态环境,其内部提
2023-06-16

python关于数字的知识点有哪些

本篇内容主要讲解“python关于数字的知识点有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python关于数字的知识点有哪些”吧!Python Number 数据类型用于存储数值。数据类
2023-06-27

关于CSS变量的知识点有哪些

这篇文章主要介绍关于CSS变量的知识点有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!css的全称是什么css的全称是Cascading Style Sheets(层叠样式表),它是一种用来表现HTML或XML等
2023-06-15

Golang中关于defer的知识点有哪些

这篇文章主要介绍“Golang中关于defer的知识点有哪些”,在日常操作中,相信很多人在Golang中关于defer的知识点有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Golang中关于defer的
2023-07-05

Java中关于异常的知识点有哪些

本文小编为大家详细介绍“Java中关于异常的知识点有哪些”,内容详细,步骤清晰,细节处理妥当,希望这篇“Java中关于异常的知识点有哪些”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。3W原则哪都有的3W原则,JA
2023-06-16

编程热搜

目录