自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

MySQL常用工具選擇和建議

數(shù)據(jù)庫(kù) MySQL
技術(shù)規(guī)劃的時(shí)候,會(huì)發(fā)現(xiàn)有一些事情需要前置,比如說(shuō)MySQL里面的工具,如果等到實(shí)際碰到了各色的問(wèn)題再來(lái)統(tǒng)一,就比較難了。有溝通成本,人力成本,技術(shù)沉淀和持續(xù)交付等等的成本,這些最好提前和團(tuán)隊(duì)有一個(gè)基本的溝通,達(dá)成一個(gè)共識(shí)。內(nèi)部統(tǒng)一了以后,和開(kāi)發(fā)同學(xué)規(guī)范統(tǒng)一就有了一個(gè)基線。

有句話說(shuō),工欲善其事,必先利其器,在MySQL方向尤其如此。

技術(shù)規(guī)劃的時(shí)候,會(huì)發(fā)現(xiàn)有一些事情需要前置,比如說(shuō)MySQL里面的工具,如果等到實(shí)際碰到了各色的問(wèn)題再來(lái)統(tǒng)一,就比較難了。有溝通成本,人力成本,技術(shù)沉淀和持續(xù)交付等等的成本,這些***提前和團(tuán)隊(duì)有一個(gè)基本的溝通,達(dá)成一個(gè)共識(shí)。內(nèi)部統(tǒng)一了以后,和開(kāi)發(fā)同學(xué)規(guī)范統(tǒng)一就有了一個(gè)基線。

大體來(lái)說(shuō),我考慮了以下幾個(gè)方面的工具:

  • 運(yùn)維管理工具
  • 數(shù)據(jù)備份恢復(fù)工具
  • 數(shù)據(jù)庫(kù)優(yōu)化工具
  • 客戶端工具
  • 性能測(cè)試工具
  • 數(shù)據(jù)庫(kù)版本管理工具
  • 數(shù)據(jù)庫(kù)審計(jì)工具

1. 運(yùn)維管理工具

要說(shuō)MySQL運(yùn)維工具,當(dāng)仁不讓Percona-toolkit,它應(yīng)該是我們學(xué)習(xí)MySQL需要熟練使用的一個(gè)運(yùn)維工具。

Percona-tooolkit通常簡(jiǎn)稱(chēng)為pt工具,pt工具其實(shí)是工具M(jìn)aatkit 和Aspersa的組合,它們都出自同一個(gè)作者:Baron Schwartz;其中,Maatkit工具更偏重于數(shù)據(jù)庫(kù)層面,最開(kāi)始就是Perl的基因。而Aspersa的范疇更傾向于系統(tǒng)層面,比如磁盤(pán)信息等。

在2017年開(kāi)始進(jìn)入了3.0時(shí)代,所以線上使用的版本幾乎都是2.2(自2013年),距今已經(jīng)跨越了好幾個(gè)年頭。 pt工具被Percona收至麾下,有專(zhuān)門(mén)的項(xiàng)目維護(hù),

2. 數(shù)據(jù)備份恢復(fù)工具

在數(shù)據(jù)備份和恢復(fù)方面,主要依據(jù)是邏輯備份和物理備份,行業(yè)里主要有以下的一些備份工具:

(1) mysqldump,MySQL最經(jīng)典的邏輯備份工具,也是MySQL工具集里默認(rèn)的工具,適用于一些數(shù)據(jù)量不大的數(shù)據(jù)備份工作。值得一提的是Facebook的生產(chǎn)環(huán)境都是使用mysqldump進(jìn)行邏輯備份。

(2) mysqlpump ,MySQL新版本推出的備份工具,但是效果沒(méi)有想象的那么好,***的一個(gè)痛點(diǎn)應(yīng)該就是備份的IO問(wèn)題還是沒(méi)法大幅度擴(kuò)展,因?yàn)槎荚?**備份出來(lái)的那個(gè)文件上,沒(méi)有拆分。

(3) mydumper,這個(gè)工具還算比價(jià)流行,能夠?qū)υ瓉?lái)的mysqldump做一個(gè)很好的補(bǔ)充。騰訊云就是定制了mydumper來(lái)做為默認(rèn)的備份工具.

另外和Mydumper配套的工具是myloader,作為數(shù)據(jù)的批量導(dǎo)入工具。

(4) Xtrabackup,來(lái)自Percona的工具,擅長(zhǎng)做物理備份,而且更傾向于是全備+增備結(jié)合的方式。

3 數(shù)據(jù)庫(kù)優(yōu)化工具

(1)innotop

這是一款用Perl所寫(xiě)的MySQL監(jiān)控工具,可以命令行模式調(diào)用展示MySQL服務(wù)器和InnoDB的運(yùn)行狀況,下載地址為:https://github.com/innotop/innotop

目前Github上提供了兩種版本,一種是開(kāi)發(fā)版(innotop-master),一種是穩(wěn)定版(innotop-gtid),推薦使用穩(wěn)定版,使用截圖如下:

(2)orzdba

orzdba是淘寶DBA團(tuán)隊(duì)開(kāi)發(fā)出來(lái)的一個(gè)Perl監(jiān)控腳本,可以監(jiān)控mysql數(shù)據(jù)庫(kù),也有一些磁盤(pán)和cpu的監(jiān)控。使用截圖如下:

 

 

 

 

(3)mytop

這是一款類(lèi)似 Linux 下的 top 命令風(fēng)格的 MySQL 監(jiān)控工具,可以監(jiān)控當(dāng)前的連接 用戶和正在執(zhí)行的命令。

(4)orztop

這是一款可以查看MySQL數(shù)據(jù)庫(kù)實(shí)時(shí)運(yùn)行的SQL狀況的工具,如果你習(xí)慣于用show processlist/show full processlist抓取SQL,這款工具就是一個(gè)很好的補(bǔ)充。

 

 

 

 

(5)systemtap,是Linux下的動(dòng)態(tài)跟蹤工具,可以監(jiān)控、跟蹤運(yùn)行中的程序或Linux內(nèi)核操作,它帶來(lái)的性能損耗很小,在一些特定的場(chǎng)景下可以編寫(xiě)SystemTap腳本來(lái)調(diào)試一些性能問(wèn)題。

4 操作系統(tǒng)監(jiān)控

(1) nmon,(Nigel’s Monitor)是由IBM 提供、免費(fèi)監(jiān)控 AIX 系統(tǒng)與 Linux 系統(tǒng)資源的工具,在系統(tǒng)數(shù)據(jù)采集方面使用廣泛。

歷史數(shù)據(jù)

(2) Mpstat ,Multiprocessor Statistics的縮寫(xiě),是實(shí)時(shí)監(jiān)控工具,mpstat***的特點(diǎn)是:可以查看多核心的cpu中每個(gè)CPU的統(tǒng)計(jì)數(shù)據(jù)

5 慢日志分析工具

(1)mysqldumpslow

這是MySQL產(chǎn)品包中的一個(gè)原生命令工具,它可以支持慢查詢的統(tǒng)計(jì)分析,對(duì)MySQL查詢語(yǔ)句的監(jiān)控、分析、優(yōu)化是MySQL優(yōu)化是一個(gè)開(kāi)始,相對(duì)來(lái)說(shuō),功能支持比較少。

(2)pt-query-digest

經(jīng)典的慢日志分析工具,屬于pt工具的一個(gè)子集。它基于Perl開(kāi)發(fā),與mysqldumpshow工具相比,py-query_digest 工具的分析結(jié)果更具體,更完善。

(3)mysqlsla

該工具是是daniel-nichter 用Perl 寫(xiě)的一個(gè)腳本,mysqlsla與pt-query-digest的作者是同一個(gè)人,現(xiàn)在是主打pt系列工具,現(xiàn)在已經(jīng)不再維護(hù)了。

(4)Anemometer

一個(gè)圖形化顯示從MySQL慢日志的開(kāi)源項(xiàng)目,基于php開(kāi)發(fā),充分結(jié)合了pt-query-digest,Anemometer可以很輕松的去分析慢查詢?nèi)罩?,找到哪些SQL需要優(yōu)化。

6 客戶端工具

(1)SQLyog

SQLyog 是一個(gè)快速而簡(jiǎn)潔的圖形化管理MySQL數(shù)據(jù)庫(kù)的工具,由業(yè)界著名的Webyog公司出品,屬于付費(fèi)產(chǎn)品。

(2)Navicat

是一套快速、可靠并價(jià)格適當(dāng)?shù)臄?shù)據(jù)庫(kù)管理工具,專(zhuān)為簡(jiǎn)化數(shù)據(jù)庫(kù)的管理及降低系統(tǒng)管理成本而設(shè)計(jì),它的設(shè)計(jì)符合數(shù)據(jù)庫(kù)管理員、開(kāi)發(fā)人員及中小企業(yè)的需要,屬于付費(fèi)產(chǎn)品。

(3)MySQL Workbench

為MySQL設(shè)計(jì)的ER/數(shù)據(jù)庫(kù)建模工具,可以支持?jǐn)?shù)據(jù)庫(kù)管理,數(shù)據(jù)遷移,數(shù)據(jù)建模等功能,它同時(shí)有開(kāi)源和商業(yè)化的兩個(gè)版本。

(4)SQL developer

這個(gè)工具是Oracle推出的一款免費(fèi)的數(shù)據(jù)庫(kù)管理工具,它主要支持Oracle,如果需要支持MySQL,需要額外下載一個(gè)驅(qū)動(dòng)包即可使用。

7 性能監(jiān)控工具

(1)Zabbix,一個(gè)基于WEB界面的提供分布式系統(tǒng)監(jiān)視以及網(wǎng)絡(luò)監(jiān)視功能的企業(yè)級(jí)的開(kāi)源解決方案,集監(jiān)控報(bào)警于一身的強(qiáng)大功能,在互聯(lián)網(wǎng)行業(yè)使用比例很高。

(2)Lepus

天兔是國(guó)內(nèi)的一位DBA開(kāi)發(fā)的一款開(kāi)源的,基于php開(kāi)發(fā)的數(shù)據(jù)庫(kù)監(jiān)控管理系統(tǒng),可以對(duì)數(shù)據(jù)庫(kù)的實(shí)時(shí)健康和各種性能指標(biāo)進(jìn)行全方位的監(jiān)控,它本身可以支持MySQL、Oracle、MongoDB、Redis數(shù)據(jù)庫(kù)的監(jiān)控,在慢日志的功能設(shè)計(jì)方面很有亮點(diǎn)。

(3)mysql-statsd,一個(gè)收集 MySQL 信息的 Python 守護(hù)進(jìn)程。并通過(guò) StatsD 發(fā)送到 Graphite

8 性能測(cè)試工具

業(yè)務(wù)上線,環(huán)境初始化需要做烤機(jī)測(cè)試。主要就是讓服務(wù)器先吃點(diǎn)苦頭,看能不能經(jīng)受住考驗(yàn)。在一定的測(cè)試之后,我們可以得到壓測(cè)的數(shù)據(jù)結(jié)果,作為后續(xù)上線的基準(zhǔn)參考。

行業(yè)里主要的性能測(cè)試工具有以下幾類(lèi):

(1) Sysbench,是一款主流的性能測(cè)試工具,本身是開(kāi)源的,具備多線程壓測(cè)能力,覆蓋硬件和軟件層面,產(chǎn)品隸屬于Percona

(2) tpcc-mysql,是Percona按照TPC-C開(kāi)發(fā)的產(chǎn)品,主要用于MySQL的壓測(cè)工具

(3) Mydbtest,該工具是有知名數(shù)據(jù)庫(kù)專(zhuān)家樓方鑫先生開(kāi)發(fā),免安裝,上手快,可以針對(duì)業(yè)務(wù)做定制化壓測(cè)。

(4) mysqlslap,mysql自帶的基準(zhǔn)測(cè)試工具,自5.1.4版開(kāi)始推出,可以通過(guò)模擬多個(gè)并發(fā)客戶端訪問(wèn)MySQL來(lái)執(zhí)行壓力測(cè)試

9 數(shù)據(jù)庫(kù)版本管理工具

liquibase,一個(gè)數(shù)據(jù)庫(kù)重構(gòu)和遷移的開(kāi)源工具,通過(guò)日志文件的形式記錄數(shù)據(jù)庫(kù)的變更,目前日志文件支持多種格式,如XML, YAML, JSON, SQL等

10 MySQL審計(jì)

數(shù)據(jù)庫(kù)審計(jì)是數(shù)據(jù)安全方面的一個(gè)重要參考,一個(gè)數(shù)據(jù)庫(kù)活動(dòng),對(duì)數(shù)據(jù)庫(kù)操作進(jìn)行細(xì)粒度審計(jì)的合規(guī)性管理,對(duì)數(shù)據(jù)庫(kù)遭受到的風(fēng)險(xiǎn)行為進(jìn)行告警,是借助于審核工具希望能夠感知的。

目前在MySQL審計(jì)方向主要存在以下幾類(lèi)審計(jì)插件:

(1) 官方的商業(yè)版插件

(2) Percona Audit Log插件

(3) MariaDB 插件

初步結(jié)論:

(1) 運(yùn)維管理工具主要考慮Percona-toolkit,作為默認(rèn)的初始化軟件使用

(2) 數(shù)據(jù)備份恢復(fù)工具目前還是已現(xiàn)有的備份恢復(fù)體系為主,采用xtrabackup和mysqldump結(jié)合的方式。

  • xtrabackup通過(guò)物理備份,每日全備,保留7天備份集,版本建議為2.4.8
  • mysqldump備份數(shù)據(jù)字典庫(kù),比如mysql,每日全備,保留7天備份集。

在這個(gè)基礎(chǔ)上在每個(gè)機(jī)房再申請(qǐng)一臺(tái)binlog備份機(jī),通過(guò)xtrabackup每日全備,binlog備份,保留3天,達(dá)到基本的數(shù)據(jù)恢復(fù)需求。

注: mydumper和myloader的適用場(chǎng)景也比較廣,可以作為一些備份恢復(fù)方案或者遷移的的改進(jìn)。

(3) MySQL實(shí)時(shí)狀態(tài)分析工具使用orzdba和orztop,其中orzdba的內(nèi)容可以通過(guò)自行定制mysqladmin來(lái)滿足需求,orztop可以作為環(huán)境初始化的軟件。

(4) 操作系統(tǒng)監(jiān)控工具使用nmon收集歷史數(shù)據(jù),mpstat得到實(shí)時(shí)的系統(tǒng)監(jiān)控?cái)?shù)據(jù),需要向系統(tǒng)部提需求定制。

(5) 慢日志分析工具使用pt-query-digest,需要調(diào)研從Lepus中抽取出慢日志的邏輯單獨(dú)調(diào)用。日志系統(tǒng)的部分需要和馳騁進(jìn)一步溝通。

(6) 客戶端工具使用workbench,推薦開(kāi)發(fā)同學(xué)使用workbench,需要內(nèi)部整理出操作文檔

(7) 性能測(cè)試工具主要使用sysbench在業(yè)務(wù)上線,環(huán)境初始化中做拷機(jī)測(cè)試,壓測(cè)硬件(IO,CPU,MEM)等,壓測(cè)MySQL,歷時(shí)至少一周。在這個(gè)基礎(chǔ)上使用tpcc-mysql,mydbtest做輔助測(cè)試。主要目標(biāo)是通過(guò)壓測(cè)的部分得到一些關(guān)鍵的參考指標(biāo)(IOPS,TPS,QPS)等。

(8) MySQL審計(jì)工具使用建議選定Percona的審計(jì)插件Audit Log和MariaDB的Server Audit,目前定位為DDL敏感,root用戶敏感,根據(jù)后期的測(cè)試,MariaDB的Server Audit插件功能全面,優(yōu)先選用。 

責(zé)任編輯:龐桂玉 來(lái)源: 楊建榮的學(xué)習(xí)筆記
相關(guān)推薦

2011-02-21 12:44:05

Postfix

2010-06-12 13:59:12

2019-03-14 15:40:13

JavaScript CSS 工具

2011-04-08 17:24:05

c++工具編程

2019-02-13 14:58:43

cssjavascript前端

2019-07-08 15:10:17

JS工具函數(shù)

2010-06-04 17:56:22

Linux 常用工具

2010-06-13 15:35:01

2014-10-21 15:11:29

Android工具類(lèi)源碼

2021-02-05 23:23:55

Web開(kāi)發(fā)工具

2010-06-04 14:00:32

Hadoop開(kāi)發(fā)

2009-01-04 11:55:09

Java數(shù)組Java常用工具Java類(lèi)

2010-07-08 13:17:19

2018-01-30 18:49:16

前端JavascriptCSS

2014-04-09 10:51:56

iOS開(kāi)發(fā)常用工具

2009-09-07 10:34:47

2010-04-29 10:22:11

Oracle exp

2022-12-05 14:39:33

Javascript工具

2010-05-28 10:13:02

MySQL維護(hù)管理工具

2011-06-10 16:07:47

SEO
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)