MySQL性能分析器是一个MySQL性能监控和分析的开源项目。它包括两个子项目:Java web应用项目myperf和Java web服务器jetty wrapper。
MySQL性能分析器是一个Java Maven项目。JDK和Maven3.0是构建时必须的。
尽管JDK8在pom.xml中已包含,这个项目用不到Java8的特性,所以用户可以自行修改这两个子项目的pom.xml文件来应用不同的JDK版本。比如,构建主机如果只有JDK7,修改myperf/pom.xml文件,将以下内容:
1.8 1.8
更改为
1.7 1.7
构建时会在perfJettyServer/target目录下生成一个zip文件:myperfserver-server.zip。准备构建,在最顶层,运行命令:
- mvn clean package
- Installation and Usage Instructions
安装和使用说明
需要的软件:Java JDK8,或者在pom.xml文件中修改的版本。
解压缩文件myperfserver-server.zip到安装目录。如果在Windows中安装,请先预览两个shell脚本并在环境变量中相应添加。
对于一般安装,需要安装MySQL数据库用于存储。否则,可以使用内置的derby数据库。a.在数据库服务器中创建数据库,比如命名为metrics。b.创建一个MySQL用户(比如, 'metrics'@'my_host'->这里的my_host是你将要进行分析的主机)具有全部权限。c.上面的信息在***登陆到分析器进行设置时需要用到。
查看start_myperf.sh脚本看是否你需要修改命令行中的设置。通常,端口号是你唯一需要修改的地方,参数 -j: jettyHome,不用修改;参数 -p: http 端口, 默认为9092;参数-w:war(web压缩),必须是myperf.war; 参数-k:工作目录,如果没有修改,将使用./work; 参数-c:url内容, 默认跳转到/myperf目录,保留不变即可。
如果需要,在文件start_myperf.sh中修改java命令的path目录
开始命令:./start_myperf.sh,注意检查nohup.out文件和日志目录的错误日志
关闭命令:./stop_myperf.sh
在***次安装启动后登陆时,用浏览器打开http://your_host:9092/myperf (或者你设定的其他端口)。初始用户名和密码是myperf/change。
登陆后,你会被重定向到安装设置页面:
你可以添加提醒的email地址。邮件使用"mailx"系统命令。
配置存储数据库,使用之前步骤创建的那个数据库。一个扫描周期设置为1到5分钟正好合适。
如果使用内置derbydb数据库,保留日期要缩短。
配置完毕后,你可以开始扫描(“Start Scanner”按钮在页面顶部)。
每次改变配置后,你需要重启扫描器。
如果扫描器未正常工作,重启分析器,使用命令:./stop_myperf.sh then ./start_myperf.sh
对于每一个你要监控的数据库服务器,你需要创建具有以下权限的用户:a.process b.复制客户端 c.显示数据库 d.显示视图 e.选择全部(如果你想用它检查数据目录或者运行说明计划)
分析器需要依赖于Linux SNMP服务来搜集系统级别的数据。检查snmpd服务是否可用。
已知的限制
snmpd是基于linux规范。
电子邮件提醒使用Linux的“mailx”命令。
许可
代码的许可在Apache许可之下。查看许可文件查看详情。