亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數據庫 > MySQL > 正文

安裝和使用percona-toolkit來輔助操作MySQL的基本教程

2024-07-24 13:08:13
字體:
來源:轉載
供稿:網友

這篇文章主要介紹了安裝和使用percona-toolkit來輔助操作MySQL的基本教程,這里舉了五個最常見的命令用法,需要的朋友可以參考下

一、percona-toolkit簡介

percona-toolkit是一組高級命令行工具的集合,用來執行各種通過手工執行非常復雜和麻煩的mysql和系統任務,這些任務包括:

檢查master和slave數據的一致性

有效地對記錄進行歸檔

查找重復的索引

對服務器信息進行匯總

分析來自日志和tcpdump的查詢

當系統出問題的時候收集重要的系統信息

percona-toolkit源自Maatkit 和Aspersa工具,這兩個工具是管理mysql的最有名的工具,現在Maatkit工具已經不維護了,請大家還是使用percona-toolkit吧!這些工具主要包括開發、性能、配置、監控、復制、系統、實用六大類,作為一個優秀的DBA,里面有的工具非常有用,如果能掌握并加以靈活應用,將能極大的提高工作效率。

二、percona-toolkit工具包安裝 1. 軟件包下載

訪問http://www.percona.com/software/percona-toolkit/下載最新版本的Percona Toolkit 或者通過如下命令行來獲取最新的版本:

 

 
  1. wget percona.com/get/percona-toolkit.tar.gz 
  2. wget percona.com/get/percona-toolkit.rpm 

我這里選擇直接從網站上找到最新版本下載:

 

 
  1. wget http://www.percona.com/redir/downloads/percona-toolkit/2.1.1/percona-toolkit-2.1.1-1.noarch.rpm 
  2. wget http://www.percona.com/redir/downloads/percona-toolkit/2.1.1/percona-toolkit-2.1.1.tar.gz 

從http://pkgs.repoforge.org/perl-TermReadKey/下載最新的TermReadKey包

 

 
  1. wget http://pkgs.repoforge.org/perl-TermReadKey/perl-TermReadKey-2.30-1.el5.rf.x86_64.rpm 

2. 軟件包安裝

我的環境是Centos 5.5 64 BIT

A. percona-toolkit的rpm安裝方式

 

 
  1. rpm -ivh perl-TermReadKey-2.30-1.el5.rf.x86_64.rpm 
  2. rpm -ivh percona-toolkit-2.1.1-1.noarch.rpm 

注意:需要安裝Term::ReadKey 包,否則會報perl(Term::ReadKey) >= 2.10 is needed by percona-toolkit-2.1.1-1.noarch錯誤

B. percona-toolkit的編譯安裝方式

tar xzvf percona-toolkit-2.1.1.tar.gz

cd percona-toolkit-2.1.1

perl Makefile.PL

make

make test

make install

三、常用功能 1. pt-duplicate-key-checker

功能介紹:

功能為從mysql表中找出重復的索引和外鍵,這個工具會將重復的索引和外鍵都列出來,并生成了刪除重復索引的語句,非常方便

用法介紹:

pt-duplicate-key-checker [OPTION...] [DSN]

包含比較多的選項,具體的可以通過命令pt-duplicate-key-checker --help來查看具體支持那些選項,我這里就不一一列舉了。DNS為數據庫或者表。

使用示例:

查看test數據庫的重復索引和外鍵使用情況使用如下命令

 

 
  1. pt-duplicate-key-checker --host=localhost --user=root --password=zhang@123 --databases=test 

2. pt-online-schema-change

功能介紹:

功能為在alter操作更改表結構的時候不用鎖定表,也就是說執行alter的時候不會阻塞寫和讀取操作,注意執行這個工具的時候必須做好備份,操作之前最好詳細讀一下官方文檔http://www.percona.com/doc/percona-toolkit/2.1/pt-online-schema-change.html。

工作原理是創建一個和你要執行alter操作的表一樣的空表結構,執行表結構修改,然后從原表中copy原始數據到表結構修改后的表,當數據copy完成以后就會將原表移走,用新表代替原表,默認動作是將原表drop掉。在copy數據的過程中,任何在原表的更新操作都會更新到新表,因為這個工具在會在原表上創建觸發器,觸發器會將在原表上更新的內容更新到新表。如果表中已經定義了觸發器這個工具就不能工作了。

用法介紹:

pt-online-schema-change [OPTIONS] DSN

options可以自行查看help,DNS為你要操作的數據庫和表。

這里有兩個參數需要介紹一下:

--dry-run 這個參數不建立觸發器,不拷貝數據,也不會替換原表。只是創建和更改新表。

--execute 這個參數的作用和前面工作原理的介紹的一樣,會建立觸發器,來保證最新變更的數據會影響至新表。注意:如果不加這個參數,這個工具會在執行一些檢查后退出。這一舉措是為了讓使用這充分了解了這個工具的原理,同時閱讀了官方文檔。

使用示例:

在線更改表的的引擎,這個尤其在整理innodb表的時候非常有用,示例如下:

 

 
  1. pt-online-schema-change --user=root --password=zhang@123 --host=localhost --lock-wait-time=120 --alter="ENGINE=InnoDB" D=test,t=oss_pvinfo2 --execute 

從下面的日志中可以看出它的執行過程:

 

 
  1. Altering `test`.`oss_pvinfo2`... 
  2. Creating new table... 
  3. Created new table test._oss_pvinfo2_new OK. 
  4. Altering new table... 
  5. Altered `test`.`_oss_pvinfo2_new` OK. 
  6. Creating triggers... 
  7. Created triggers OK. 
  8. Copying approximately 995696 rows... 
  9. Copied rows OK. 
  10. Swapping tables... 
  11. Swapped original and new tables OK. 
  12. Dropping old table... 
  13. Dropped old table `test`.`_oss_pvinfo2_old` OK. 
  14. Dropping triggers... 
  15. Dropped triggers OK. 
  16. Successfully altered `test`.`oss_pvinfo2`. 

在來一個范例,大表添加字段的,語句如下:

 

 
  1. pt-online-schema-change --user=root --password=zhang@123 --host=localhost --lock-wait-time=120 --alter="ADD COLUMN domain_id INT" D=test,t=oss_pvinfo2 --execute 

3. pt-query-advisor

功能介紹:

根據一些規則分析查詢語句,對可能的問題提出建議,這些評判規則大家可以看一下官網的鏈接:http://www.percona.com/doc/percona-toolkit/2.1/pt-query-advisor.html,這里就不詳細列舉了。那些查詢語句可以來自慢查詢文件、general日志文件或者使用pt-query-digest截獲的查詢語句。目前這個版本有bug,當日志文件非常大的時候會需要很長時間甚至進入死循環。

用法介紹:

 

 
  1. pt-query-advisor /path/to/slow-query.log 
  2. pt-query-advisor --type genlog mysql.log 
  3. pt-query-digest --type tcpdump.txt --print --no-report | pt-query-advisor 

使用示例:

分析一個語句的例子:

 

 
  1. pt-query-advisor --query "select * from aaa" 

分析general log中的查詢語句的例子:

 

 
  1. pt-query-advisor /data/dbdata/general.log 

分析慢查詢中的查詢語句的例子:

 

 
  1. pt-query-advisor /data/dbdata/localhost-slow.log 

4. pt-show-grants

功能介紹:

規范化和打印mysql權限,讓你在復制、比較mysql權限以及進行版本控制的時候更有效率!

用法介紹:

pt-show-grants [OPTION...] [DSN]

選項自行用help查看,DSN選項也請查看help,選項區分大小寫。

使用示例:

查看指定mysql的所有用戶權限:

 

 
  1. pt-show-grants --host='localhost' --user='root' --password='zhang@123' 

查看執行數據庫的權限:

 

 
  1. pt-show-grants --host='localhost' --user='root' --password='zhang@123' --database='hostsops' 

查看每個用戶權限生成revoke收回權限的語句:

 

 
  1. pt-show-grants --host='localhost' --user='root' --password='zhang@123' --revoke 

5. pt-upgrade

功能介紹:

在多臺服務器上執行查詢,并比較有什么不同!這在升級服務器的時候非常有用,可以先安裝并導數據到新的服務器上,然后使用這個工具跑一下sql看看有什么不同,可以找出不同版本之間的差異。

用法介紹:

pt-upgrade [OPTION...] DSN [DSN...] [FILE]

比較文件中每一個查詢語句在兩個主機上執行的結果,并檢查在每個服務器上執行的結果、錯誤和警告。

使用示例:

只查看某個sql在兩個服務器的運行結果范例:

 

 
  1. pt-upgrade h='localhost' h=192.168.3.92 --user=root --password=zhang@123 --query="select * from user_data.collect_data limit 5" 

查看文件中的對應sql在兩個服務器的運行結果范例:

 

 
  1. pt-upgrade h='localhost' h=192.168.3.92 --user=root --password=zhang@123 aaa.sql 

查看慢查詢中的對應的查詢SQL在兩個服務器的運行結果范例:

 

  
  1. pt-upgrade h='localhost' h=192.168.3.92 --user=root --password=zhang@123 slow.log 

此外還可以執行compare的類型,主要包含三個query_times,results,warnings,比如下面的例子,只比較sql的執行時間

 

 
  1. pt-upgrade h=192.168.3.91 h=192.168.3.92 --user=root --password=zhang@123 --query="select * from user_data.collect_data" --compare query_times 
 

 



注:相關教程知識閱讀請移步到MYSQL教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲精品久久久久国产| 热re91久久精品国99热蜜臀| 亚洲第一网站免费视频| 日韩欧美亚洲国产一区| 亚洲www在线观看| 国产欧美精品一区二区三区介绍| 国产91|九色| 夜夜嗨av一区二区三区四区| 91九色国产视频| 97视频在线观看成人| 欧美日韩国内自拍| 亚洲国产成人精品女人久久久| 国模精品视频一区二区三区| 国产精品一区二区久久久| www.久久久久久.com| 久热精品视频在线观看一区| 久久久黄色av| 欧美激情手机在线视频| 国产精品欧美日韩| 久久成人在线视频| 亚洲色图色老头| 欧美午夜视频在线观看| 久久综合久久八八| 久久不射热爱视频精品| 欧洲精品毛片网站| 色琪琪综合男人的天堂aⅴ视频| 日韩欧美中文字幕在线观看| 91精品在线国产| 日韩男女性生活视频| 欧洲成人免费aa| 国产成人精品久久二区二区91| 亚洲国产高清高潮精品美女| 亚洲人成在线电影| 欧美视频在线免费看| 成人激情视频免费在线| 国产福利视频一区| 亚洲国产精品人人爽夜夜爽| 91免费看国产| 国内精品久久久久影院 日本资源| 51色欧美片视频在线观看| 美日韩丰满少妇在线观看| 国产成人av网址| 色偷偷综合社区| 国产小视频国产精品| 日韩视频永久免费观看| 91免费看片网站| 久久九九精品99国产精品| 成人激情免费在线| 日韩免费中文字幕| 久久久久999| 欧美激情精品久久久久久蜜臀| 精品久久久久久久久国产字幕| 国产精品精品视频一区二区三区| 成人免费高清完整版在线观看| 91热精品视频| 26uuu国产精品视频| 欧美精品18videos性欧美| 日韩高清电影好看的电视剧电影| 国产成人亚洲综合91| 欧美一级片免费在线| 久久久久久97| 久久99亚洲精品| 欧美日韩在线免费| 国产精品久久久久久久久久东京| 国产精品视频自拍| 91精品国产综合久久久久久久久| 亚洲欧美中文日韩v在线观看| 69av成年福利视频| 狠狠躁夜夜躁人人躁婷婷91| 欧美日韩色婷婷| 亚洲视频电影图片偷拍一区| 日韩黄在线观看| 成人网在线视频| 国产97在线播放| 亚洲美女又黄又爽在线观看| 日韩国产精品亚洲а∨天堂免| 成人黄色生活片| 久久精品影视伊人网| 国产午夜精品久久久| 亚洲护士老师的毛茸茸最新章节| 丝袜一区二区三区| 国产精品视频久久久| 色综久久综合桃花网| 国产噜噜噜噜久久久久久久久| 欧美日韩国产精品一区二区不卡中文| 久久色精品视频| 亚洲国产精彩中文乱码av在线播放| 色999日韩欧美国产| 欧美区在线播放| 国产综合在线视频| 国产欧美va欧美va香蕉在线| 国产日韩欧美在线视频观看| 精品国产福利视频| 色综合天天狠天天透天天伊人| 国产午夜精品视频免费不卡69堂| 国内精品久久久久久中文字幕| 欧美综合一区第一页| 日韩av在线免费播放| 91黑丝高跟在线| 欧美黄色三级网站| 亚洲第一区中文字幕| 国产91对白在线播放| 丁香五六月婷婷久久激情| 国产精品久久久久久久app| 欧美激情免费在线| 一本色道久久综合狠狠躁篇怎么玩| 欧美天堂在线观看| 国产精品一区二区在线| 日韩免费av片在线观看| 91影视免费在线观看| 亚洲第一精品久久忘忧草社区| 国产免费亚洲高清| 久久久人成影片一区二区三区观看| 欧美人与性动交| 91成人福利在线| 狠狠躁夜夜躁人人爽天天天天97| 亚洲最新av在线网站| 欧美国产亚洲视频| 国产精品一区二区三区毛片淫片| 成人在线视频福利| xvideos成人免费中文版| 日韩国产欧美精品在线| 国产精品久久久久久久久久三级| 亚洲综合自拍一区| 蜜臀久久99精品久久久无需会员| 日韩欧美aaa| 欧美一级大片视频| 欧美成人精品一区| 日韩在线不卡视频| 国产精品三级在线| 欧美在线激情视频| 久久福利视频导航| 91精品国产91久久久久久| 亚洲亚裔videos黑人hd| 国产精品一区二区三区久久久| 日本高清视频一区| 久久久中文字幕| 成人性教育视频在线观看| 欧美视频在线看| 91精品久久久久久久久久另类| 国产成人精品视频| 97视频免费在线看| 欧美一级高清免费播放| 日韩精品中文字幕在线播放| 日韩在线观看精品| 午夜精品久久久久久久99热浪潮| 欧美性极品少妇精品网站| 日产精品久久久一区二区福利| www.国产精品一二区| 精品久久久久国产| 国产成人精品视频在线| 精品二区三区线观看| 国产亚洲欧美日韩美女| 国产精品色悠悠| 欧美三级xxx| 69**夜色精品国产69乱| 亚洲精品乱码久久久久久金桔影视| 日韩欧美国产骚| 亚洲加勒比久久88色综合| 日韩在线不卡视频| 欧美日韩国产黄| 国产成人小视频在线观看| 国产主播喷水一区二区| 久久香蕉国产线看观看网|