日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
MySQL系統(tǒng)變量應(yīng)用探究

MySQL系統(tǒng)變量是MySQL數(shù)據(jù)庫的重要組成部分,下面就為您分析MySQL系統(tǒng)變量的具體應(yīng)用,如果您對MySQL系統(tǒng)變量感興趣的話,不妨一看。

MySQL系統(tǒng)變量
其中系統(tǒng)變量,又分全局(global)和會話(session)兩種.

全局系統(tǒng)變量,主要影響整個mysql實例的全局設(shè)置.
大部分變量都是作為mysql的服務(wù)器調(diào)節(jié)參數(shù)存在.新增或修改這類變量, 會影響mysql的運(yùn)行方式.
比如: auto_increment_increment 代表序列的自增值, 默認(rèn)為1

另外, mysql中,只有一部分變量是支持運(yùn)行時動態(tài)修改的.
變量修改的作用范圍,是那些重新創(chuàng)建連接到mysql服務(wù)器的客戶端連接.

如果你的連接是由應(yīng)用通過連接池來維護(hù)的,并且,是長連接的,那么,此時在服務(wù)器運(yùn)行過程中,動態(tài)地修改全局變量對你是沒有什么影響的.

通過全局變量, 我們可以想到一些應(yīng)用場景:
1,  在存儲過程, 函數(shù), sql里,使用一些業(yè)務(wù)相關(guān)的全局變量.
經(jīng)常編寫業(yè)務(wù)相關(guān)的存儲過程,函數(shù)的朋友, 可能會需要針對不同業(yè)務(wù),設(shè)置能共享訪問的全局變量.

比如, 公司的總?cè)藬?shù),很多存儲過程都需要調(diào)用這個值,但是因為這個值,不是經(jīng)常會改變的,不需要每次都count.
所以大多數(shù)人會考慮把它cache一把,那么mysql提供的全局變量,就是一個好的存儲場所.

2,  數(shù)據(jù)庫配置中心

首先,這不一定是一種好的解決方式, 特別是大型地分布式系統(tǒng).但是想到了,就跟大家分享一下.
主要就是利用了三層,四層架構(gòu)的系統(tǒng), 必不可少的數(shù)據(jù)庫層來實現(xiàn)的.

大家知道, 應(yīng)用的配置, 大多數(shù)是用配置文件或配置服務(wù)器來實現(xiàn), 前者需要跟著項目打包, 部署.
后者, 只要在應(yīng)用初始化或運(yùn)行時,去配置中心取配置就行了.(淘寶這邊兩者都在用)

而數(shù)據(jù)庫的配置中心, 其實類似配置服務(wù)器, 只不過靈活運(yùn)用了mysql的變量機(jī)制.
它能繼承配置服務(wù)器的多數(shù)優(yōu)點, 但***的特色就是在 sql, function , procedure 里都可以很方便地引用到.(相比用表的方式, 要方便一些)
并且本身就具有緩存, 移植得話, mysql得導(dǎo)出也是很快.
所以小系統(tǒng), 想快速得搭建一個配置中心,利用mysql感覺還是不錯的.

調(diào)用語法:
select * from user_info where id = @@global.admin_id -- 例子,通過全局里配置的管理員id來取用戶信息

以下是全局變量的一些常用命令,比較簡單:
set global auto_increment_increment=1; -- 設(shè)置序列的增長值
show global variables; --  顯示所有的global變量
show global variables like '%test%' -- 查詢包含test字符串的global變量
會話系統(tǒng)變量, 主要用于在當(dāng)前客戶端連接的生命周期內(nèi).它的變量值是全局變量的一份拷貝.
如果連接斷開, 對當(dāng)前會話變量所做修改都會被重置.

比如, 服務(wù)器會話變量 autocommit 默認(rèn)為 true , 而你在非常連的客戶端連接里設(shè)置了 false , 那么在執(zhí)行完sql后, 連接就會斷開. 此后,如果創(chuàng)建新的連接來執(zhí)行sql, autocommit又會默認(rèn) true.

會話變量的使用場景與全局類似,只是生命周期不同, 因此可以用來統(tǒng)計同一連接內(nèi)請求sql次數(shù), sql類型等信息.

session變量的一些常用操作:
set session auto_increment_increment=1; -- 設(shè)置序列的增長值
show variables; or show session variables; --  如果不指明, 默認(rèn)使用session變量
show variables like '%test%' or show session variables lile '%test%' -- 查詢包含test字符串的session變量

【編輯推薦】

分析比較兩種MySQL字符串匹配模式

NULL與MySQL空字符串的區(qū)別

深入研究MySQL結(jié)果字符串

MySQL截取字符串函數(shù)方法

MySQL字符串各列類型的區(qū)別


網(wǎng)頁標(biāo)題:MySQL系統(tǒng)變量應(yīng)用探究
網(wǎng)頁網(wǎng)址:http://www.5511xx.com/article/dhohsoo.html