时间:2021-07-01 10:21:17 帮助过:2人阅读
静态变量:需要在配置文件中修改,重启服务后生效;
全局变量:服务级别的设定,对整个服务生效;
会话变量:仅对当前会话生效,其他会话和新会话不受影响;会话结束值即销毁;
shell> mysqld --help --verbose
mysql> SHOW [{GLOBAL|SESSION}] VARIABLES [LIKE ‘‘]; mysql> SELECT @@{GLOBAL|SESSION}.VARIABLE_NAME; mysql> SELECT * FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME=‘VARIABLE_NAME‘; mysql> SELECT * FROM INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME=‘VARIABLE_NAME‘;
通过配置文件修改,只需要在配置文件中指定变量命和值,重启服务即可,例如:
shell> vim /etc/my.cnf
innodb_file_per_table = 1
shell> service mysqld restart
通过配置文件修改的变量会永久生效。
运行时修改使用SET命令,并指定变量类型(全局或会话)给变量赋值即可,例如:
mysql> SET GLOBAL innodb_file_per_table = 1 mysql> SET SESSION innodb_file_per_table = 1
需要注意的是,全局变量中运行时修改的值不会永久生效,重启后会失效,如果是会话变量的话,会话断开即失效。
MySQL服务 - MySQL变量类型及变量设置
标签: