MySQL入門--設(shè)置session,global變量的方法

MySQL 設(shè)置session,global變量的方法

創(chuàng)新互聯(lián)主營珙縣網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,成都app軟件開發(fā)公司,珙縣h5小程序開發(fā)搭建,珙縣網(wǎng)站營銷推廣歡迎珙縣等地區(qū)企業(yè)咨詢

--設(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í)例參數(shù)wait_timeout為10秒.

 

1)設(shè)置全局變量方法1(不推薦):修改參數(shù)文件,然后重啟mysqld

# vi /etc/my.cnf

[mysqld]

wait_timeout=10

# service mysqld restart

不過這個(gè)方法太生硬了,線上服務(wù)重啟無論如何都應(yīng)該盡可能避免.

 

2)設(shè)置全局變量方法2(推薦):在命令行里通過SET來設(shè)置,然后再修改參數(shù)文件

如果要修改全局變量,必須要顯示指定"GLOBAL"或者"@@global.",同時(shí)必須要有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    |

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

如果查詢時(shí)使用的是show variables的話,會發(fā)現(xiàn)設(shè)置并沒有生效,除非重新登錄再查看.這是因?yàn)槭褂胹how variables的話就等同于使用show session variables,查詢的是會話變量,只有使用show global variables查詢的才是全局變量.如果僅僅想修改會話變量的話,可以使用類似set wait_timeout=10;或者set session wait_timeout=10;這樣的語法.

當(dāng)前只修改了正在運(yùn)行的MySQL實(shí)例參數(shù),但下次重啟mysqld又會回到默認(rèn)值,所以別忘了修改參數(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編譯時(shí)的默認(rèn)值(wait_timeout=28800):

mysql> set wait_timeout=DEFAULT;

這里要注意的是,并不是所有的系統(tǒng)變量都能被設(shè)置為DEFAULT,如果設(shè)置這些變量為DEFAULT則會返回錯(cuò)誤.

--end—

 

參考文獻(xiàn):

【1】MySQL中Global、Session和Both(Global & Session)范圍的Dynamic及Not Dynamic類型的變量的作用范圍和設(shè)置方法,http://blog.csdn.net/zyz511919766/article/details/13294479

【2】MySQL里設(shè)置或修改系統(tǒng)變量的幾種方法,

http://wenku.baidu.com/link?url=wvLTvtJv-B-YHLfaaCYANwq0ieBf5TDonJtXx-2cJgXI0jIhr3n_1yn4c60TnbiEBiE7F9ttv6VxpWRRwFbhY7xX3aoV75VWaw2htrCqh7m

網(wǎng)站題目:MySQL入門--設(shè)置session,global變量的方法
網(wǎng)址分享:http://muchs.cn/article4/pppsie.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、定制網(wǎng)站、定制開發(fā)、響應(yīng)式網(wǎng)站、建站公司、靜態(tài)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁設(shè)計(jì)公司