程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> Yahoo的MySQL性能分析器詳解

Yahoo的MySQL性能分析器詳解

編輯:MySQL綜合教程

Yahoo的MySQL性能分析器詳解


Yahoo的MySQL性能分析器詳解

一、介紹

Yahoo於前日開源了自己的MySQL性能分析器(MySQL Performance Analyzer),源碼托管在GitHub。此性能分析器使用Maven構建,需要JDK 8和Maven 3.0。

此性能分析器項目包含了兩個子項目:
1)Java Web應用項目:myperf
2)Jetty Web服務器項目:jetty wrapper

雖然項目在pom.xml配置中指明要使用JDK 8,但其實源碼並未使用JDK 8的語言特性,因此修改此pom.xml,改為JDK 7也能正常構建並運行。即把

1.8
1.8

改成

1.7
1.7

目前Yahoo開源的MySQL性能分析器不包含可視化輸出,地址:https://github.com/yahoo/mysql_perf_analyzer

Yahoo的性能分析器項目可以用於MySQL的性能監控和分析。

Build過程默認會在目錄perfJettyServer/target下創建一個名為myperfserver-server.zip的文件。要構建它的話,在頂層目錄執行命令:

mvn clean package

二、MySQL性能分析器的安裝及用法

1、根據前面生成的myperfserver-server.zip文件,解壓它。

2、默認情況下,此性能分析器會把測試數據也存放在MySQL。所以需要為它創建一個數據庫及相關用戶。
1)創建一個數據庫,名為metrics
2)創建MySQL用戶,名為’metrics’@’my_host’
3)分配權限,要能擁有此數據庫的所有權限
注意,如果不使用MySQL,那麼就會使用內建的Derby數據庫。

3、查看腳本start_myperf.sh,看是否需要調整。
通常可能會修改端口號
-j: jettyHome
-p: http port,默認使用9092端口
-w: war,這個必須是myperf.war
-k: working directory,工作目錄,如果未指定,將會使用./work目錄
-c: url context,URL上下文,默認是/myperf
還要注意修改Java命令行的路徑。

4、啟動

# ./start_myperf.h

檢查nohup.out和log目錄,看是否有任何錯誤日志。

5、關閉

# ./stop_myperf.sh

6、首次啟動並登陸
浏覽器訪問 http://your_host:9092/myperf
初始用戶名和密碼為:myperf/change
登陸後,可以看到設置頁面。
可以添加Email地址以便收到通知。

7、配置完成後,可以啟動掃描器Scanner
點擊Start Scanner按鈕
要注意,每次修改了配置後,都需要重啟掃描器。
如果掃描器的工作未達到預期,重啟分析器:

# ./stop_myperf.sh
# ./start_myperf.sh

對於想監控的每個數據庫,都需要創建一個MySQL用戶,並分配以下的權限:
1)process權限
2)replication client權限
3)show databases權限
4) show view權限
5)select語句的所有權限

8、分析器依賴Linux的SNMP來收集OS底層的數據,故需檢查snmpd服務的狀態,看是否啟動。

三、注意事項

有兩點需注意,
1、snmpd基於Linux規范
2、郵件通知使用了Linux的mailx命令

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved