mysql设置环境变量
生活随笔
收集整理的這篇文章主要介紹了
mysql设置环境变量
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
-- 設(shè)置或修改系統(tǒng)日志有效期
SET GLOBAL expire_logs_days=8;
SHOW VARIABLES LIKE '%expire_logs_days%';
-- 設(shè)置或修改系統(tǒng)最大連接數(shù)
SET GLOBAL max_connections = 2648;
SHOW VARIABLES LIKE '%max_connections%';
-- 修改MYSQL自動編號步長
SHOW VARIABLES LIKE '%auto_increment%';
SET GLOBAL auto_increment_offset = 1;
SET GLOBAL auto_increment_increment = 1;
比如設(shè)置MySQL實例參數(shù)wait_timeout為10秒.
1) 設(shè)置全局變量方法1(不推薦): 修改參數(shù)文件, 然后重啟mysqld
# vi /etc/my.cnf
[mysqld]
wait_timeout=10
# service mysqld restart
不過這個方法太生硬了, 線上服務(wù)重啟無論如何都應(yīng)該盡可能避免.
?
2) 設(shè)置全局變量方法2(推薦): 在命令行里通過SET來設(shè)置, 然后再修改參數(shù)文件
如果要修改全局變量, 必須要顯示指定"GLOBAL"或者"@@global.", 同時必須要有SUPER權(quán)限.?
mysql> set global wait_timeout=10;
or
mysql> set @@global.wait_timeout=10;
?
然后查看設(shè)置是否成功:
mysql> select @@global.wait_timeout=10;
or
mysql> show global variables like 'wait_timeout';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| wait_timeout ?| 10 ? ?|?
+---------------+-------+
如果查詢時使用的是show variables的話, 會發(fā)現(xiàn)設(shè)置并沒有生效, 除非重新登錄再查看. 這是因為使用show variables的話就等同于使用show session variables, 查詢的是會話變量, 只有使用show global variables查詢的才是全局變量. 如果僅僅想修改會話變量的話, 可以使用類似set wait_timeout=10;或者set session wait_timeout=10;這樣的語法.?
當前只修改了正在運行的MySQL實例參數(shù), 但下次重啟mysqld又會回到默認值, 所以別忘了修改參數(shù)文件:
# vi /etc/my.cnf
[mysqld]
wait_timeout=10
3) 設(shè)置會話變量方法: 在命令行里通過SET來設(shè)置
如果要修改會話變量值, 可以指定"SESSION"或者"@@session."或者"@@"或者"LOCAL"或者"@@local.", 或者什么都不使用.?
mysql> set wait_timeout=10;
or
mysql> set session wait_timeout=10;
or
mysql> set local wait_timeout=10;
or
mysql> set @@wait_timeout=10;
or
mysql> set @@session.wait_timeout=10;
or
mysql> set @@local.wait_timeout=10;
?
然后查看設(shè)置是否成功:
mysql> select @@wait_timeout;
or
mysql> select @@session.wait_timeout;
or
mysql> select @@local.wait_timeout;
or
mysql> show variables like 'wait_timeout';
or
mysql> show local variables like 'wait_timeout';
or
mysql> show session variables like 'wait_timeout';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| wait_timeout ?| 10 ? ?|?
+---------------+-------+
4) 會話變量和全局變量轉(zhuǎn)換方法: 在命令行里通過SET來設(shè)置
將會話變量值設(shè)置為對應(yīng)的全局變量值呢:
mysql> set @@session.wait_timeout=@@global.wait_timeout;
將會話變量值設(shè)置為MySQL編譯時的默認值(wait_timeout=28800):
mysql> set wait_timeout=DEFAULT;
這里要注意的是, 并不是所有的系統(tǒng)變量都能被設(shè)置為DEFAULT, 如果設(shè)置這些變量為DEFAULT則會返回錯誤.?
--End-
SET GLOBAL expire_logs_days=8;
SHOW VARIABLES LIKE '%expire_logs_days%';
-- 設(shè)置或修改系統(tǒng)最大連接數(shù)
SET GLOBAL max_connections = 2648;
SHOW VARIABLES LIKE '%max_connections%';
-- 修改MYSQL自動編號步長
SHOW VARIABLES LIKE '%auto_increment%';
SET GLOBAL auto_increment_offset = 1;
SET GLOBAL auto_increment_increment = 1;
比如設(shè)置MySQL實例參數(shù)wait_timeout為10秒.
1) 設(shè)置全局變量方法1(不推薦): 修改參數(shù)文件, 然后重啟mysqld
# vi /etc/my.cnf
[mysqld]
wait_timeout=10
# service mysqld restart
不過這個方法太生硬了, 線上服務(wù)重啟無論如何都應(yīng)該盡可能避免.
?
2) 設(shè)置全局變量方法2(推薦): 在命令行里通過SET來設(shè)置, 然后再修改參數(shù)文件
如果要修改全局變量, 必須要顯示指定"GLOBAL"或者"@@global.", 同時必須要有SUPER權(quán)限.?
mysql> set global wait_timeout=10;
or
mysql> set @@global.wait_timeout=10;
?
然后查看設(shè)置是否成功:
mysql> select @@global.wait_timeout=10;
or
mysql> show global variables like 'wait_timeout';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| wait_timeout ?| 10 ? ?|?
+---------------+-------+
如果查詢時使用的是show variables的話, 會發(fā)現(xiàn)設(shè)置并沒有生效, 除非重新登錄再查看. 這是因為使用show variables的話就等同于使用show session variables, 查詢的是會話變量, 只有使用show global variables查詢的才是全局變量. 如果僅僅想修改會話變量的話, 可以使用類似set wait_timeout=10;或者set session wait_timeout=10;這樣的語法.?
當前只修改了正在運行的MySQL實例參數(shù), 但下次重啟mysqld又會回到默認值, 所以別忘了修改參數(shù)文件:
# vi /etc/my.cnf
[mysqld]
wait_timeout=10
3) 設(shè)置會話變量方法: 在命令行里通過SET來設(shè)置
如果要修改會話變量值, 可以指定"SESSION"或者"@@session."或者"@@"或者"LOCAL"或者"@@local.", 或者什么都不使用.?
mysql> set wait_timeout=10;
or
mysql> set session wait_timeout=10;
or
mysql> set local wait_timeout=10;
or
mysql> set @@wait_timeout=10;
or
mysql> set @@session.wait_timeout=10;
or
mysql> set @@local.wait_timeout=10;
?
然后查看設(shè)置是否成功:
mysql> select @@wait_timeout;
or
mysql> select @@session.wait_timeout;
or
mysql> select @@local.wait_timeout;
or
mysql> show variables like 'wait_timeout';
or
mysql> show local variables like 'wait_timeout';
or
mysql> show session variables like 'wait_timeout';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| wait_timeout ?| 10 ? ?|?
+---------------+-------+
4) 會話變量和全局變量轉(zhuǎn)換方法: 在命令行里通過SET來設(shè)置
將會話變量值設(shè)置為對應(yīng)的全局變量值呢:
mysql> set @@session.wait_timeout=@@global.wait_timeout;
將會話變量值設(shè)置為MySQL編譯時的默認值(wait_timeout=28800):
mysql> set wait_timeout=DEFAULT;
這里要注意的是, 并不是所有的系統(tǒng)變量都能被設(shè)置為DEFAULT, 如果設(shè)置這些變量為DEFAULT則會返回錯誤.?
--End-
總結(jié)
以上是生活随笔為你收集整理的mysql设置环境变量的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 第四十七期:毕业3年Java程序员,年薪
- 下一篇: XMindCrack.jar下载