av激情亚洲男人的天堂国语,日韩欧美精品一中文字幕,无码av一区二区三区无码,国产又色又爽又刺激的a片,国产又色又爽又刺激的a片

MySQL管理員必備的十大工具盤(pán)點(diǎn)

本文的作者Daniel Nichter是MySQL工具的開(kāi)發(fā)者,他為MySQL管理員推薦了十款必備工具。以下是全文內(nèi)容:

創(chuàng)新互聯(lián)是由多位在大型網(wǎng)絡(luò)公司、廣告設(shè)計(jì)公司的優(yōu)秀設(shè)計(jì)人員和策劃人員組成的一個(gè)具有豐富經(jīng)驗(yàn)的團(tuán)隊(duì),其中包括網(wǎng)站策劃、網(wǎng)頁(yè)美工、網(wǎng)站程序員、網(wǎng)頁(yè)設(shè)計(jì)師、平面廣告設(shè)計(jì)師、網(wǎng)絡(luò)營(yíng)銷(xiāo)人員及形象策劃。承接:做網(wǎng)站、網(wǎng)站制作、網(wǎng)站改版、網(wǎng)頁(yè)設(shè)計(jì)制作、網(wǎng)站建設(shè)與維護(hù)、網(wǎng)絡(luò)推廣、數(shù)據(jù)庫(kù)開(kāi)發(fā),以高性?xún)r(jià)比制作企業(yè)網(wǎng)站、行業(yè)門(mén)戶(hù)平臺(tái)等全方位的服務(wù)。

MySQL是一套需要大量輔助工具加以修復(fù)、診斷及優(yōu)化的復(fù)雜系統(tǒng)。幸運(yùn)的是,對(duì)于管理員來(lái)說(shuō),MySQL的高普及度吸引了大量軟件開(kāi)發(fā)商為其打造高品質(zhì)的各類(lèi)開(kāi)源工具,內(nèi)容涵蓋MySQL系統(tǒng)的復(fù)雜性均衡、性能表現(xiàn)維持及穩(wěn)定運(yùn)行保障,而且其中大部分是免費(fèi)工具。

下列十款開(kāi)源工具對(duì)于使用MySQL的用戶(hù)來(lái)說(shuō)是極為寶貴的財(cái)富,其內(nèi)容覆蓋從單獨(dú)實(shí)例到多節(jié)點(diǎn)環(huán)境的各類(lèi)情況。該盤(pán)點(diǎn)比較用心,大家能夠從中找到足以幫助自己備份MySQL數(shù)據(jù)、提高性能、防止基準(zhǔn)偏差以及在出現(xiàn)問(wèn)題時(shí)從記錄中篩選關(guān)鍵性數(shù)據(jù)的各類(lèi)工具。

比起親自動(dòng)手創(chuàng)建內(nèi)部工具,使用此類(lèi)工具有下列幾項(xiàng)優(yōu)勢(shì)。首先,由于使用范圍廣,它們?cè)谙到y(tǒng)成熟性及功能實(shí)踐方面都要更勝一籌。其次,因?yàn)樗鼈兌际敲赓M(fèi)的開(kāi)源工具,所以能夠得到不斷拓展的MySQL社區(qū)提供的知識(shí)及使用經(jīng)驗(yàn)的加持。再有,這些開(kāi)發(fā)人員在研發(fā)環(huán)節(jié)中態(tài)度嚴(yán)謹(jǐn),很多工具還具備專(zhuān)業(yè)技術(shù)支持 (無(wú)論是免費(fèi)版還是商業(yè)版),因此能夠持續(xù)得到完善進(jìn)而保持對(duì)不斷變化的新MySQL業(yè)界態(tài)勢(shì)的適應(yīng)性。

請(qǐng)記住,總有許多我們未曾留心的實(shí)用工具值得關(guān)注。我在推薦工具的選擇中更為側(cè)重于免費(fèi)及開(kāi)源特質(zhì),功能性及可用性標(biāo)準(zhǔn)則作為稍次之的標(biāo)準(zhǔn)。另外需要強(qiáng)調(diào)的是,這些工具中除了一款以外,其余全部屬于Unix指令行程序,因?yàn)榭傮w來(lái)說(shuō)MySQL在Unix系統(tǒng)中的部署及開(kāi)發(fā)工作更為常見(jiàn)。如果各位讀者在我的推薦中沒(méi)有找到自己偏愛(ài)的某款工具,希望能在文章下方的評(píng)論欄中留言,與大家共享你的心得。

閑言少敘,十大必備MySQL工具推薦就此開(kāi)始。

MySQL必備工具***位: mk-query-digest

沒(méi)有什么比低下的MySQL性能表現(xiàn)更讓人抓狂的了。盡管大家常常下意識(shí)地認(rèn)為是硬件配置滯后導(dǎo)致此類(lèi)問(wèn)題,但事實(shí)上在大多數(shù)情況中真正的癥結(jié)并不在這里。性能表現(xiàn)不佳往往由以下原因造成,即某些執(zhí)行緩慢的查詢(xún)阻塞了其它查詢(xún)指令的順暢進(jìn)行,并由此產(chǎn)生了一個(gè)響應(yīng)時(shí)間遲緩的惡性循環(huán)。由于優(yōu)化查詢(xún)指令比起升級(jí)硬件來(lái)說(shuō)能夠節(jié)約大量成本,因此合乎邏輯的優(yōu)化方式應(yīng)該從分析查詢(xún)指令日志文件入手。

數(shù)據(jù)庫(kù)管理員們應(yīng)該經(jīng)常分析查詢(xún)?nèi)罩?,進(jìn)而把握運(yùn)行環(huán)境的各類(lèi)波動(dòng)。而如果大家從來(lái)沒(méi)有進(jìn)行過(guò)該項(xiàng)分析,請(qǐng)立即著手進(jìn)行吧。如果對(duì)此缺乏經(jīng)驗(yàn),依靠第三方軟件的幫助也是不錯(cuò)的選擇;盡管很多人認(rèn)為那些軟件只會(huì)在瞎忙一氣之后給出一個(gè)虛構(gòu)的漂亮結(jié)果,但我得說(shuō),實(shí)際上它們通常情況下還是確切有效的。

在當(dāng)前的諸多選擇中,mk- query-digest是查詢(xún)?nèi)罩痉治龉ぞ咧凶畎舻囊豢?。它由Baron Schwartz和我本人聯(lián)合編寫(xiě),功能成熟性、記錄充分性以及測(cè)試徹底性都做得相當(dāng)?shù)轿?。MySQL本身包含了一款名為mysqldumpslow的查詢(xún)?nèi)罩痉治銎鳎摴ぞ卟粌H陳舊過(guò)時(shí)、驗(yàn)證規(guī)范不準(zhǔn)確,而且缺乏廣泛的實(shí)際應(yīng)用加以支持。而其它幾款較為著名的查詢(xún)?nèi)罩痉治銎鳎ㄎ仪皫啄昃帉?xiě)的 mysqlsla,都與mysqldumpslow具備相同的缺點(diǎn)。

mk-query-digest能夠分析查詢(xún)?nèi)罩緝?nèi)容并根據(jù)匯總得出的執(zhí)行時(shí)間及其它各項(xiàng)指標(biāo)的統(tǒng)計(jì)信息自動(dòng)生成報(bào)告。由于查詢(xún)?nèi)罩局械男畔⒘繕O為巨大,有時(shí)甚至包含數(shù)以百萬(wàn)計(jì)的條目,因此此類(lèi)分析工作必須依靠特定工具來(lái)完成。

mk-query-digest可以幫助大家找出那些與其它查詢(xún)指令相比耗時(shí)最長(zhǎng)的條目。對(duì)這些低速查詢(xún)加以?xún)?yōu)化將使整套MySQL體系的運(yùn)行速度大幅提高,***響應(yīng)延遲也將相應(yīng)下降。查詢(xún)指令的優(yōu)化工作本身堪稱(chēng)藝術(shù),其中包含諸多細(xì)致入微的技巧,但整個(gè)流程的基本原則總是共通的:尋獲低速查詢(xún)指令、進(jìn)行優(yōu)化、提高查詢(xún)響應(yīng)時(shí)間。

該工具使用起來(lái)非常簡(jiǎn)便,執(zhí)行mk-query-digest slow-query.log,那些運(yùn)行速度遲緩的查詢(xún)指令將被輸出至slow-query.log文件。工具中還提供了“查詢(xún)指令復(fù)核”功能,意在列出那些我們尚未加以核對(duì)或批準(zhǔn)的查詢(xún)指令。如此一來(lái),我們就可以?xún)H僅對(duì)那些新出現(xiàn)的查詢(xún)指令進(jìn)行有針對(duì)性的處理,繁瑣枯燥的日志分析工作也隨之變得更加快速、高效。

下載地址: http://maatkit.org/get/mk-query-digest

維護(hù)負(fù)責(zé)人: Daniel Nichter and Baron Schwartz

更多信息: http://maatkit.org/ | http://code.google.com/p/maatkit/

#p#

MySQL必備工具第二位: mydumper

能夠快速生成數(shù)據(jù)轉(zhuǎn)儲(chǔ)在服務(wù)器及備份信息克隆工作中至關(guān)重要。遺憾的是,MySQL自身包含的mysqldump組件只支持單線(xiàn)程工作,這就使得它無(wú)法迅速解決數(shù)據(jù)密集型用戶(hù)所面臨的實(shí)際問(wèn)題。不過(guò)好消息還是有的,mydumper作為新生代實(shí)用工具,能夠良好支持多線(xiàn)程工作,這使得它在處理速度方面十倍于傳統(tǒng)的mysqldump。

另一款知名的同類(lèi)工具是MySQL Data Dumper,它的問(wèn)題是無(wú)法單獨(dú)管理備份集合、差異點(diǎn)或是一套完整備份計(jì)劃中的其它組成部分。該工具只是單純將MySQL中的數(shù)據(jù)以盡可能快的速度進(jìn)行轉(zhuǎn)儲(chǔ),這在完成限時(shí)任務(wù)方面倒是具備一定價(jià)值,例如趁員工沒(méi)有在線(xiàn)操作的時(shí)段抓緊時(shí)間進(jìn)行備份。另外,如果大家在實(shí)際使用中需要異常頻繁地執(zhí)行備份,那么 MySQL Data Dumper是比較理想的選擇。

從技術(shù)角度分析mydumper的話(huà),其特征之一是在處理過(guò)程中需要對(duì)列表加以鎖定,因此如果我們需要在工作時(shí)段執(zhí)行備份工作,那么它恐怕沒(méi)什么用武之地。但話(huà)說(shuō)回來(lái),專(zhuān)業(yè)級(jí)數(shù)據(jù)恢復(fù)的費(fèi)用是每小時(shí)數(shù)百美元,而且即使數(shù)據(jù)沒(méi)能得到恢復(fù),我們收到的也不可能是道歉信而仍然是一紙賬單。相比之下,mydumper完全免費(fèi),并且在基本備份工作中表現(xiàn)頗佳。

mydumper在克隆整體服務(wù)器方面也比較方便。其它工具往往會(huì)對(duì)硬盤(pán)內(nèi)容進(jìn)行整體復(fù)制,但大家需要的往往只是MySQL中的數(shù)據(jù),這個(gè)時(shí)候mydumper就能迅速準(zhǔn)確地完成任務(wù)。設(shè)置于云平臺(tái)上的服務(wù)器特別適合使用mydumper進(jìn)行克隆,只需將MySQL中的數(shù)據(jù)從現(xiàn)有服務(wù)器復(fù)制到新的實(shí)例中即可。

在創(chuàng)建從屬服務(wù)器、基準(zhǔn)確定及模板應(yīng)用方面采用克隆方案確實(shí)行之有效,但克隆真正能夠發(fā)揮作用的領(lǐng)域無(wú)疑還是在開(kāi)發(fā)及測(cè)試環(huán)節(jié)當(dāng)中。對(duì)于動(dòng)態(tài)MySQL 環(huán)境來(lái)說(shuō),在將軟件推至臺(tái)面之前迅速對(duì)其進(jìn)行復(fù)制并加以測(cè)試可說(shuō)是至關(guān)重要的步驟。有了mydumper,大家能夠快速創(chuàng)建一套幾乎與母體完全相同的服務(wù)器來(lái)模擬生產(chǎn)服務(wù)器,運(yùn)行于其上的測(cè)試結(jié)果也將更接近于實(shí)際運(yùn)行結(jié)果。

下載地址: https://launchpad.net/mydumper/+download

維護(hù)負(fù)責(zé)人: Domas Mituzas, Andrew Hutchings, Mark Leith

更多信息: http://www.mydumper.org/ | https://launchpad.net/mydumper/

#p#

MySQL必備工具第三位: xtrabackup 以及 xtrabackup-manager

如果大家每天都要用到自己的數(shù)據(jù)庫(kù),也就是說(shuō)全天侯使用(晚間也需要運(yùn)行),那么鎖定列表以進(jìn)行備份的方案就無(wú)法奏效。這種情況之下,xtrabackup是我們的上上之選。這款工具又被稱(chēng)為Percona XtraBackup,它在備份過(guò)程中無(wú)需鎖定列表,且是此類(lèi)工具中惟一的免費(fèi)開(kāi)源產(chǎn)品。相比之下,那些專(zhuān)用的無(wú)鎖定備份軟件就顯得相當(dāng)昂貴,其使用成本達(dá)到每臺(tái)服務(wù)器五千美元以上。

xtrabackup 還具備增量備份功能,允許大家在新一輪備份工作中只對(duì)那些相對(duì)上次備份結(jié)果有所變更的內(nèi)容進(jìn)行處理。增量備份功能非常貼心,能夠在那些基礎(chǔ)數(shù)據(jù)量龐大但變動(dòng)相對(duì)較小的備份工作中發(fā)揮***的功效。

此外,另一款衍生于xtrabackup的工具也日趨成熟,它就是用于簡(jiǎn)化完整備份計(jì)劃管理工作的xtrabackup-manager。盡管這款工具面世時(shí)間不長(zhǎng),且仍處于開(kāi)發(fā)階段,但其潛在能力不容忽視。它所提供的功能極為先進(jìn),包括集群備份整合及備份集合期限管理。綜合來(lái)看,xtrabackup 與xtrabackup-manager是一套強(qiáng)大且免費(fèi)的備份工作解決方案。

下載地址: http://www.percona.com/software/percona-xtrabackup/downloads/

維護(hù)負(fù)責(zé)人: Percona

更多信息:

http://www.percona.com/docs/wiki/percona-xtrabackup:start |https://launchpad.net/percona-xtrabackup

下載地址: http://code.google.com/p/xtrabackup-manager/

維護(hù)負(fù)責(zé)人: Lachlan Mulcahy

更多信息: http://code.google.com/p/xtrabackup-manager/ | http://mysqlsoapbox.blogspot.com/

#p#

MySQL必備工具第四位: tcprstat

tcprstat可能是此次推薦的十款工具中最為艱深的項(xiàng)目。該工具用于監(jiān)視TCP請(qǐng)求,并對(duì)低級(jí)別的響應(yīng)時(shí)間進(jìn)行統(tǒng)計(jì)及打印輸出。當(dāng)大家習(xí)慣于以響應(yīng)時(shí)間來(lái)衡量性能表現(xiàn),tcprstat的作用是相當(dāng)可觀(guān)的。

整套原則在Cary Millsap及Jeff Holt聯(lián)合撰寫(xiě)的“甲骨文產(chǎn)品性能優(yōu)化”一書(shū)中有詳細(xì)闡述,而且該原則同樣適用于MySQL。從基本思路上來(lái)說(shuō),MySQL也不例外,服務(wù)項(xiàng)目的運(yùn)作遵循接收請(qǐng)求(即查詢(xún)過(guò)程)、滿(mǎn)足該請(qǐng)求(即執(zhí)行時(shí)間)以及回饋?lái)憫?yīng)結(jié)果(即結(jié)果集)。服務(wù)項(xiàng)目的實(shí)際響應(yīng)時(shí)間指的正是從接收請(qǐng)求開(kāi)始到發(fā)送響應(yīng)之間的時(shí)間跨度。響應(yīng)時(shí)間超短,相同時(shí)段內(nèi)允許提交的請(qǐng)求數(shù)量就越多。

并行處理效能及其它低級(jí)別因素也在這一過(guò)程中扮演著重要角色,但我們應(yīng)該將整個(gè)過(guò)程化繁為簡(jiǎn),即把每個(gè)八小時(shí)工作日的實(shí)際運(yùn)行時(shí)間按28800秒計(jì)算。因此如果能將每條請(qǐng)求的響應(yīng)時(shí)間在原有基礎(chǔ)上縮短400毫秒(即從原有的 500毫秒縮短至100毫秒),那么就意味著我們每天可以多處理230,400條請(qǐng)求。Tcprstat正是幫我們達(dá)成這一目標(biāo)的利器。

由于篇幅所限,我在本文中只能在功能性方面略加描述(即講解MySQL響應(yīng)時(shí)間優(yōu)化工作的***步)以激起諸位讀者的興趣。如果大家在驚鴻一瞥之后決定加深了解,請(qǐng)?jiān)陂喿x“甲骨文產(chǎn)品性能優(yōu)化”一書(shū)之后嘗試使用tcprstat。

下載地址: (source) https://launchpad.net/tcprstat | (binary)http://www.percona.com/docs/wiki/tcprstat:start

維護(hù)負(fù)責(zé)人: Percona

更多信息: http://www.percona.com/docs/wiki/tcprstat:start | https://launchpad.net/tcprstat

#p#

MySQL必備工具第五位: mk-table-checksum

“數(shù)據(jù)偏差”是廣泛存在于動(dòng)態(tài)MySQL環(huán)境之中的一項(xiàng)重大問(wèn)題。其實(shí)際含義為:從屬數(shù)據(jù)未能與主體數(shù)據(jù)正確同步,發(fā)生的原因主要是從屬數(shù)據(jù)端出現(xiàn)寫(xiě)入操作或者主體數(shù)據(jù)端執(zhí)行了具備不確定性的查詢(xún)指令。更糟糕的是,數(shù)據(jù)偏差情況很可能會(huì)被管理人員所忽視,直到爆發(fā)嚴(yán)重后果。Mk-table-checksum該登場(chǎng)了,這款工具的作用是在執(zhí)行復(fù)雜、敏感的計(jì)算時(shí),并行驗(yàn)證兩個(gè)或多個(gè)列表中相關(guān)數(shù)據(jù)內(nèi)容的一致性。

mk-table-checksum 能夠分別為獨(dú)立服務(wù)器及同步架構(gòu)中的服務(wù)器提供幫助,這也是該工具***的亮點(diǎn)所在。主體服務(wù)器與從屬服務(wù)器之間的數(shù)據(jù)一致性在同步時(shí)必須得到充分的重視。由于主體數(shù)據(jù)變更在向從屬數(shù)據(jù)同步的過(guò)程中存在一定程度的滯后(即延遲),因此直接讀取服務(wù)器數(shù)據(jù)的方式無(wú)法嚴(yán)格保證信息的一致性,因?yàn)閿?shù)據(jù)在同步完全結(jié)束之前,一直處于不斷變化且并不完整的狀態(tài)下。鎖定列表、等等所有數(shù)據(jù)同步結(jié)束之后再進(jìn)行驗(yàn)證當(dāng)然行之有效,但這種方案意味著我們不得不同時(shí)中止服務(wù)器服務(wù)的正常響應(yīng)。mk-table- checksum允許大家在不鎖定列表的前提下,對(duì)主體及從屬數(shù)據(jù)間的差異性進(jìn)行驗(yàn)證(至于該技術(shù)的具體實(shí)現(xiàn)方法,請(qǐng)單擊此處參閱工具文檔)。 http://www.maatkit.org/doc/mk-table-checksum.html

除了同步過(guò)程中的一致性,數(shù)據(jù)驗(yàn)證在其它一些方面也頗具意義,例如列表尺寸問(wèn)題。MySQL的CHECKSUM TABLE指令對(duì)于小型列表來(lái)說(shuō)完全夠用,但規(guī)模龐大的列表往往需要“分塊”處理,以避免在校驗(yàn)及計(jì)算的過(guò)程中CPU或內(nèi)存發(fā)生長(zhǎng)期鎖死或超載的狀況。

分塊處理能夠應(yīng)付的第二個(gè)大問(wèn)題是對(duì)數(shù)據(jù)一致性定期檢查的要求。雖然數(shù)據(jù)偏差可能只是一次偶然的意外,但事實(shí)上遇到臉丑手黑的管理員,這類(lèi)問(wèn)題也許會(huì)反復(fù)發(fā)作。mk-table-checksum的設(shè)計(jì)初衷正是對(duì)列表進(jìn)行定期檢查,且整個(gè)驗(yàn)證過(guò)程分步分塊、循序漸進(jìn),直到整套大規(guī)模列表處理完畢。這種持續(xù)性處理方式有助于管理員對(duì)數(shù)據(jù)偏差進(jìn)行經(jīng)常性校對(duì)。

下載地址: http://maatkit.org/get/mk-table-checksum

維護(hù)負(fù)責(zé)人: Daniel Nichter & Baron Schwartz

更多信息: http://maatkit.org/ | http://code.google.com/p/maatkit/

#p#

MySQL必備工具第六位: stalk 及collect

有時(shí)候,問(wèn)題會(huì)在我們疏于監(jiān)控或回家睡覺(jué)的時(shí)間段內(nèi)發(fā)生,大家都知道在問(wèn)題發(fā)生之后才對(duì)MySQL及服務(wù)器運(yùn)行狀態(tài)進(jìn)行診斷往往很難甚至不可能得出正確結(jié)論。這時(shí)大家普遍的做法往往是親自編寫(xiě)一套腳本然后靜待檢測(cè)結(jié)果,或者是對(duì)額外數(shù)據(jù)進(jìn)行記錄,畢竟沒(méi)人比自己更了解自己所使用的系統(tǒng)。但問(wèn)題是,系統(tǒng)正常工作時(shí)大家當(dāng)然對(duì)其分外熟悉,如果系統(tǒng)當(dāng)前的工作狀態(tài)可能存在各類(lèi)隱患,我們也往往會(huì)試圖簡(jiǎn)單地將其解決掉而非進(jìn)行深入的探索及分析。

值得慶幸的是,有人對(duì)MySQL崩潰狀態(tài)下的狀況非常了解,并針對(duì)那些常見(jiàn)多發(fā)的問(wèn)題編寫(xiě)了兩款分別名為 stalk及 collect的故障排查工具。前一款工具的作用是在第二款真正運(yùn)行實(shí)例之前等待設(shè)備狀態(tài)符合故障發(fā)生時(shí)的情形。盡管粗看起來(lái)這一點(diǎn)似乎無(wú)關(guān)緊要,但事實(shí)上該工具確實(shí)簡(jiǎn)單高效地收集了各類(lèi)可能引發(fā)問(wèn)題的細(xì)節(jié)變化。

首先,stalk根據(jù)配置內(nèi)容的要求每隔一段時(shí)間運(yùn)行一次collect,該步驟能夠消除記錄中那些繁雜無(wú)用的冗余數(shù)據(jù),使對(duì)此前故障的分析更有條理。接下來(lái),collect會(huì)將MySQL對(duì)自身運(yùn)行情況的報(bào)告及其它各類(lèi)我們可能想都沒(méi)想過(guò)的數(shù)據(jù)進(jìn)行匯總,其中包括:曾經(jīng)打開(kāi)的文件夾、應(yīng)用程序接受及調(diào)用的系統(tǒng)信息、網(wǎng)絡(luò)通信量以及其它種種。如此一來(lái),如果最終大家不得不求助于解決MySQL故障的專(zhuān)業(yè)咨詢(xún)團(tuán)隊(duì),那么他們?cè)谠?xún)問(wèn)中所要涉及到的各類(lèi)信息我們就都已經(jīng)掌握了。

stalk 與collect能夠根據(jù)需要進(jìn)行配置,因此它們能夠應(yīng)付幾乎所有故障情況。惟一的要求是為stalk的觸發(fā)建立一項(xiàng)可定義的條件。如果有多項(xiàng)條件都是引發(fā)故障的嫌疑對(duì)象,那么大家可能需要與自己的MySQL運(yùn)行環(huán)境專(zhuān)家進(jìn)行磋商,以部署更廣泛的審查工作。事實(shí)上,導(dǎo)致MySQL崩潰的根本原因也可能潛伏于該系統(tǒng)之外。

stalk 與 collect也可以用于主動(dòng)防御。舉例來(lái)說(shuō),如果大家了解到相同時(shí)間段內(nèi)不應(yīng)該同時(shí)存在50個(gè)以上的活躍MySQL連接,那么stalk可以主動(dòng)監(jiān)控這一問(wèn)題。換句話(huà)說(shuō),這兩款工具能夠幫你解決許多初顯端倪以及尚不明朗的麻煩。

下載地址:

http://aspersa.googlecode.com/svn/trunk/stalk |http://aspersa.googlecode.com/svn/trunk/collect

維護(hù)負(fù)責(zé)人: Baron Schwartz

更多信息: http://aspersa.googlecode.com/svn/html/index.html |http://code.google.com/p/aspersa/

#p#

MySQL必備工具第七位: mycheckpoint

沒(méi)人希望問(wèn)題確切發(fā)生之后才忙著想辦法補(bǔ)救,因此通過(guò)可視化儀表對(duì)MySQL運(yùn)行環(huán)境進(jìn)行實(shí)時(shí)監(jiān)控是防患于未燃的一項(xiàng)重要途徑。

MySQL相關(guān)的免費(fèi)或商業(yè)化監(jiān)控應(yīng)用程序很多,有些是專(zhuān)門(mén)服務(wù)于MySQL的、有些則是具備MySQL插件或模板的通用型工具。Mycheckpoint值得關(guān)注的原因是:它不僅免費(fèi)開(kāi)源,而且只針對(duì)MySQL,同時(shí)各類(lèi)功能一應(yīng)俱全。

跟當(dāng)下大多數(shù)監(jiān)控解決方案一樣, mycheckpoint基于見(jiàn)面運(yùn)行。以下圖為例:

mycheckpoint可以經(jīng)由設(shè)置對(duì)MySQL及服務(wù)器各項(xiàng)指示同時(shí)進(jìn)行監(jiān)控,例如InnoDB緩沖池刷新、臨時(shí)列表創(chuàng)建、操作系統(tǒng)負(fù)載、內(nèi)存使用情況等等。如果大家不喜歡閱讀圖表,mycheckpoint還能夠生成文字報(bào)告。

正如 stalk的功能,警報(bào)條件可以定義為電子郵件通知,但不必運(yùn)行collect這類(lèi)收集額外故障排查數(shù)據(jù)的工具。Mycheckpoint的另一項(xiàng)實(shí)用功能是通過(guò)監(jiān)控MySQL中的變量揪出可能導(dǎo)致問(wèn)題的隱患,或者是阻止那些本不該存在的對(duì)MySQL的修改。

監(jiān)控MySQL不僅僅對(duì)數(shù)據(jù)中心或者龐大的設(shè)備部署生效。即使大家只擁有一臺(tái)MySQL服務(wù)器,監(jiān)控措施仍然是不可或缺的;經(jīng)由此類(lèi)媒介,我們能夠確切了解自己系統(tǒng)的相關(guān)運(yùn)行情況,進(jìn)而有效地預(yù)見(jiàn)或規(guī)避可能發(fā)生的故障。

下載地址: http://code.google.com/p/mycheckpoint/downloads/list

維護(hù)負(fù)責(zé)人: Shlomi Noach

更多信息: http://code.openark.org/forge/mycheckpoint

#p#

MySQL必備工具第八位: shard-query

還在為針對(duì)諸多分區(qū)或是數(shù)據(jù)碎片集合的查詢(xún)速率低下而煩惱?其實(shí)只需使用shard-query,整個(gè)處理速度會(huì)大大加快。那些基于下列架構(gòu)的查詢(xún)指令能夠從shard-query工具中得到***的提升:

  • 通過(guò)FROM串聯(lián)自子句的子查詢(xún)
  • UNION 及 UNION ALL
  • IN
  • BETWEEN

復(fù)合函數(shù) SUM, COUNT, MIN, and MAX 等也能夠使用上述架構(gòu)。舉例來(lái)說(shuō),下面這條查詢(xún)指令即可由shard-query并行執(zhí)行:

 
 
 
 
  1. SELECT DayOfWeek, COUNT(*) AS c 
  2. FROM ontime_fact 
  3. JOIN dim_date USING(date_id) 
  4. WHERE Year 
  5. BETWEEN 2000 AND 2008 
  6. GROUP BY DayOfWeek 
  7. ORDER BY c DESC; 

根據(jù)基準(zhǔn)測(cè)試的結(jié)果顯示,通過(guò)并行處理的方式,該查詢(xún)指令的響應(yīng)時(shí)間縮短了85%左右,從原先的21秒降低至3秒。

Shard-query并不是一款能夠獨(dú)立運(yùn)行的工具;它需要諸如Gearman之類(lèi)的其它程序提供支持,而且設(shè)置過(guò)程也相對(duì)比較復(fù)雜。但如果大家的數(shù)據(jù)分區(qū)及查詢(xún)指令符合上面列出的構(gòu)造,那么付出一些努力也是值得的,畢竟優(yōu)化效果非常明顯。

下載地址: (svn checkout) http://code.google.com/p/shard-query/source/checkout

維護(hù)負(fù)責(zé)人: Justin Swanhart

更多信息: http://code.google.com/p/shard-query/

#p#

MySQL必備工具第九位: mk-archiver

隨著列表體積的日益增大,查詢(xún)指令生效時(shí)間也每況愈“長(zhǎng)”。響應(yīng)時(shí)間不理想的干擾因素當(dāng)然很多,但如果我們已經(jīng)對(duì)各個(gè)角度實(shí)施了優(yōu)化,那么***仍然制約性能表現(xiàn)的瓶頸所在就是列表的規(guī)模了。將龐大列表中的各行內(nèi)容進(jìn)行歸檔操作能夠有效縮短查詢(xún)指令的響應(yīng)時(shí)間。

除非列表內(nèi)容并不重要,否則大家千萬(wàn)不能貿(mào)然刪除其中的內(nèi)容行。歸檔也需要技巧,因?yàn)槭紫葦?shù)據(jù)不能缺失、列表也不能過(guò)分鎖定以免影響訪(fǎng)問(wèn),還要注意歸檔操作不能導(dǎo)致MySQL及服務(wù)器的超載。我們的目標(biāo)是讓整個(gè)歸檔過(guò)程穩(wěn)定可靠,除了縮短查詢(xún)響應(yīng)時(shí)間外不產(chǎn)生任何負(fù)面效果。mk-archiver 能夠幫我們達(dá)到愿望。

mk-archiver有兩條基本工作要求,***是歸檔對(duì)象必須能夠被識(shí)別。舉例來(lái)說(shuō),如果列表中存在日期列,而且一般來(lái)說(shuō)只有幾年之內(nèi)的數(shù)據(jù)有實(shí)際價(jià)值,那么在這幾年之前的數(shù)據(jù)行可以進(jìn)行歸檔。另外,必須具備一套惟一的索引系統(tǒng)以幫助mk-archiver 工具進(jìn)行定位,而不必掃描整個(gè)列表中的內(nèi)容行。掃描一套巨型列表在時(shí)間及經(jīng)濟(jì)方面的成本都相當(dāng)高昂,因此關(guān)鍵指數(shù)及特定的SELECT語(yǔ)句在避免整體掃描方面至關(guān)重要。

在實(shí)際應(yīng)用當(dāng)中,mk-archiver 會(huì)自動(dòng)處理各類(lèi)技術(shù)細(xì)節(jié)。大家需要做的只是告知該工具哪個(gè)列表需要?dú)w檔、如何識(shí)別可歸檔的內(nèi)容行以及將這些行歸至何處。如果需要的話(huà),也可以將這些行剪切至另一個(gè)新列表中,或者是以書(shū)面的形式生成一個(gè)轉(zhuǎn)儲(chǔ)文件,方便日后需要的時(shí)候另行導(dǎo)入。一旦熟悉了這款工具的用法,其中的大量細(xì)微調(diào)節(jié)選項(xiàng)能夠幫我們實(shí)現(xiàn)各種特殊的歸檔要求。此外,mk-archiver 具備嵌入式端口,因此它可以在未經(jīng)代碼修正的情況下解決諸多復(fù)雜的歸檔需求。

下載地址: http://maatkit.org/get/mk-archiver

維護(hù)負(fù)責(zé)人: Daniel Nichter and Baron Schwartz

更多信息: http://maatkit.org/ | http://code.google.com/p/maatkit/

#p#

MySQL必備工具第十位: oak-security-audit

大家***一次全面審核自己MySQL服務(wù)器安全性是在什么時(shí)候?如果答案是“從來(lái)沒(méi)有”,其實(shí)也不必?fù)?dān)心,因?yàn)閺牟桓惆踩珯z查的群體相當(dāng)龐大。許多企業(yè)提供安全審核服務(wù),但除非在審計(jì)之后不存在任何大規(guī)模變更,否則我們MySQL環(huán)境的安全性應(yīng)該得到定期的檢查。

外部威脅是執(zhí)行MySQL安全審核的一大重要原因,但內(nèi)部威脅,尤其是來(lái)自現(xiàn)任或前任雇員的因素往往更加危險(xiǎn),因?yàn)樗麄兡壳?或曾經(jīng))具備信任和權(quán)限。安全性在隱私性信息的保障(例如醫(yī)療及健康保險(xiǎn)方面)方面同樣不容忽視,必須盡力阻止意外訪(fǎng)問(wèn)(例如登錄至生產(chǎn)服務(wù)器而非開(kāi)發(fā)服務(wù)器)或者第三方程序與系統(tǒng)之間的交互。

對(duì)于那些希望增進(jìn)安全性的用戶(hù)來(lái)說(shuō),oak-security-audit大有可為,它是一款免費(fèi)的開(kāi)源工具,能夠應(yīng)對(duì)基本的MySQL安全審核。它不需要進(jìn)行任何設(shè)置,將其運(yùn)行于自己的MySQL服務(wù)器之上,它就會(huì)打印出一份關(guān)于賬戶(hù)、賬戶(hù)權(quán)限、密碼、一般改進(jìn)方案以及潛在風(fēng)險(xiǎn)的建議報(bào)告,例如推薦暫時(shí)禁用網(wǎng)絡(luò)訪(fǎng)問(wèn)。以下是報(bào)告中的部分內(nèi)容:

 
 
 
 
  1. -- Looking for anonymous user accounts(尋找匿名用戶(hù)賬戶(hù)) 
  2. -- ----------------------------------- 
  3. -- Passed(未發(fā)現(xiàn)問(wèn)題) 
  4. -- 
  5. -- Looking for accounts accessible from any host(尋找能夠從任何主機(jī)實(shí)施訪(fǎng)問(wèn)的賬號(hào)) 
  6. -- --------------------------------------------- 
  7. -- Found 1 accounts accessible from any host. 
  8. Recommended actions: 
  9. RENAME USER 'msandbox'@'%' TO 'msandbox'@''; 
  10. (找到1個(gè)此類(lèi)賬戶(hù)。建議操作: 
  11. 將用戶(hù)名 'msandbox'@'%' 重命名為 'msandbox'@'';) 

oak-security-audit的工作重點(diǎn)在于MySQL的安全性方面,因此它并不能代替一套完整的、由技術(shù)人員提出的安全審核方案,但它作為***道防線(xiàn)能夠起到相當(dāng)了不起的防護(hù)作用,而且操作簡(jiǎn)單。大家可以將其固化進(jìn)cron指令,每周按時(shí)運(yùn)行,并將生成的報(bào)告通過(guò)電子郵件發(fā)送給自己并加以審閱。

下載地址: http://openarkkit.googlecode.com/svn/trunk/openarkkit/src/oak/oak-security-audit.py

維護(hù)負(fù)責(zé)人: Shlomi Noach

更多信息:

http://openarkkit.googlecode.com/svn/trunk/openarkkit/doc/html/oak-security-audit.html

原文鏈接:http://www.infoworld.com/d/data-management/10-essential-mysql-tools-admins-168018?page=0,0


當(dāng)前名稱(chēng):MySQL管理員必備的十大工具盤(pán)點(diǎn)
標(biāo)題鏈接:http://uogjgqi.cn/article/djheise.html
掃二維碼與項(xiàng)目經(jīng)理溝通

我們?cè)谖⑿派?4小時(shí)期待你的聲音

解答本文疑問(wèn)/技術(shù)咨詢(xún)/運(yùn)營(yíng)咨詢(xún)/技術(shù)建議/互聯(lián)網(wǎng)交流