新聞中心
MySQL中的變量類型很多,下面為您介紹的是MySQL系統(tǒng)變量方面的知識,如果您對MySQL系統(tǒng)變量感興趣的話,不妨一看。

創(chuàng)新互聯(lián)建站技術(shù)團隊十載來致力于為客戶提供成都做網(wǎng)站、成都網(wǎng)站制作、高端網(wǎng)站設(shè)計、全網(wǎng)營銷推廣、搜索引擎SEO優(yōu)化等服務(wù)。經(jīng)過多年發(fā)展,公司擁有經(jīng)驗豐富的技術(shù)團隊,先后服務(wù)、推廣了近千家網(wǎng)站,包括各類中小企業(yè)、企事單位、高校等機構(gòu)單位。
MySQL可以訪問許多系統(tǒng)和連接變量。當服務(wù)器運行時許多變量可以動態(tài)更改。這樣通常允許你修改服務(wù)器操作而不需要停止并重啟服務(wù)器。
mysqld服務(wù)器維護兩種MySQL系統(tǒng)變量。全局變量影響服務(wù)器整體操作。會話變量影響具體客戶端連接的操作。
當服務(wù)器啟動時,它將所有全局變量初始化為默認值。這些默認值可以在選項文件中或在命令行中指定的選項進行更改。服務(wù)器啟動后,通過連接服務(wù)器并執(zhí)行SET GLOBAL var_name語句,可以動態(tài)更改這些全局變量。要想更改全局變量,必須具有SUPER權(quán)限。
服務(wù)器還為每個連接的客戶端維護一系列會話變量。在連接時使用相應(yīng)全局變量的當前值對客戶端的會話變量進行初始化。對于動態(tài)會話變量,客戶端可以通過SET SESSION var_name語句更改它們。設(shè)置會話變量不需要特殊權(quán)限,但客戶端只能更改自己的會話變量,而不能更改其它客戶端的會話變量。
對于全局變量的更改可以被訪問該全局變量的任何客戶端看見。然而,它只影響更改后連接的客戶的從該全局變量初始化的相應(yīng)會話變量。不影響目前已經(jīng)連接的客戶端的會話變量(即使客戶端執(zhí)行SET GLOBAL語句也不影響)。
可以使用幾種語法形式來設(shè)置或檢索全局或會話變量。下面的例子使用了sort_buffer_sizeas作為示例變量名。
要想設(shè)置一個GLOBAL變量的值,使用下面的語法:
mysql> SET GLOBAL sort_buffer_size=value;
mysql> SET @@global.sort_buffer_size=value;
要想設(shè)置一個SESSION變量的值,使用下面的語法:
mysql> SET SESSION sort_buffer_size=value;
mysql> SET @@session.sort_buffer_size=value;
mysql> SET sort_buffer_size=value;
LOCAL是SESSION的同義詞。
如果設(shè)置變量時不指定GLOBAL、SESSION或者LOCAL,默認使用SESSION。
要想檢索一個GLOBAL變量的值,使用下面的語法:
mysql> SELECT @@global.sort_buffer_size;
mysql> SHOW GLOBAL VARIABLES like 'sort_buffer_size';
要想檢索一個SESSION變量的值,使用下面的語法:
mysql> SELECT @@sort_buffer_size;
mysql> SELECT @@session.sort_buffer_size;
mysql> SHOW SESSION VARIABLES like 'sort_buffer_size';
這里,LOCAL也是SESSION的同義詞。
當你用SELECT @@var_name搜索一個變量時(也就是說,不指定global.、session.或者local.),MySQL返回SESSION值(如果存在),否則返回GLOBAL值。
對于SHOW VARIABLES,如果不指定GLOBAL、SESSION或者LOCAL,MySQL返回SESSION值。
當設(shè)置GLOBAL變量需要GLOBAL關(guān)鍵字但檢索時不需要它們的原因是防止將來出現(xiàn)問題。如果我們移除一個與某個GLOBAL變量具有相同名字的SESSION變量,具有SUPER權(quán)限的客戶可能會意外地更改GLOBAL變量而不是它自己的連接的SESSION變量。如果我們添加一個與某個GLOBAL變量具有相同名字的SESSION變量,想更改GLOBAL變量的客戶可能會發(fā)現(xiàn)只有自己的SESSION變量被更改了。
【編輯推薦】
帶您了解MySQL隨機字符串函數(shù)
深入研究MySQL結(jié)果字符串
MySQL截取字符串函數(shù)方法
MySQL字符串各列類型的區(qū)別
MySQL多個條件判斷示例
分享題目:MySQL系統(tǒng)變量的使用
分享URL:http://www.dlmjj.cn/article/dpdihej.html


咨詢
建站咨詢
