標題索引mysql
變量分類sql
變量設置數據庫
變量分類服務器
變量主要分爲全局變量和會話變量,全局變量是當客戶端程序與服務器端創建會話後自動集成部分全局變量的值,而會話變量是隻對當前變量有效,另外全局變量有些支持在線修改,有些則是隻讀變量,只讀變量只容許在配置文件中加載值。session
變量設置ide
1.全局變量設置spa
全局變量保存在數據庫information_schema的GLOBAL_VARIABLES表中,所以修改時能夠經過配置文件加載時修改,部分變量也可經過在線修改,在線修改時一般有兩種命令方式,分別以下:orm
mysql>SET GLOBAL system_var_name=value;索引
mysql>SET @@global.system_var_name=value;it
舉例說明以下:
MariaDB [(none)]> show global variables like 'transaction_prealloc_size'; +---------------------------+-------+ | Variable_name | Value | +---------------------------+-------+ | transaction_prealloc_size | 4096 | +---------------------------+-------+ 1 row in set (0.00 sec) MariaDB [(none)]> set global transaction_prealloc_size=8192; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> show global variables like 'transaction_prealloc_size'; +---------------------------+-------+ | Variable_name | Value | +---------------------------+-------+ | transaction_prealloc_size | 8192 | +---------------------------+-------+ 1 row in set (0.00 sec) MariaDB [(none)]> set @@global.transaction_prealloc_size=4096; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> show global variables like 'transaction_prealloc_size'; +---------------------------+-------+ | Variable_name | Value | +---------------------------+-------+ | transaction_prealloc_size | 4096 | +---------------------------+-------+ 1 row in set (0.00 sec)
2.會話變量設置
會話變量保存在數據庫information_schema的SESSION_VARIABLES表中,所以修改時能夠經過配置文件加載時修改,部分變量也可經過在線修改,在線修改時一般有兩種命令方式,分別以下:
mysql>SET SESSION system_var_name=value;
mysql>SET @@session.system_var_name=value
MariaDB [(none)]> show session variables like 'wait_timeout'; +---------------+-------+ | Variable_name | Value | +---------------+-------+ | wait_timeout | 28800 | +---------------+-------+ 1 row in set (0.00 sec) MariaDB [(none)]> set session wait_timeout=30000; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> show session variables like 'wait_timeout'; +---------------+-------+ | Variable_name | Value | +---------------+-------+ | wait_timeout | 30000 | +---------------+-------+ 1 row in set (0.00 sec) MariaDB [(none)]> set @@session.wait_timeout=28800; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> show session variables like 'wait_timeout'; +---------------+-------+ | Variable_name | Value | +---------------+-------+ | wait_timeout | 28800 | +---------------+-------+ 1 row in set (0.00 sec)
3.會話變量轉全局變量
會話變量調整爲全局變量時,一般採用以下方法:
mysql> set @@session.wait_timeout=@@global.wait_timeout;