PHP慢脚本日志和Mysql的慢查询日志
2015-05-28 13:53
399 查看
1、PHP慢脚本日志· 间歇性的502,是后端 PHP-FPM 不可用造成的,间歇性的502一般认为是由于 PHP-FPM 进程重启造成的。· 在 PHP-FPM 的子进程数目超过的配置中的数量时候,会出现间歇性的502错误,如果在配置中设置了max_requests的话,超过数量也会出现502错误,而max_requests的设置,正是为了防止不安全的第三方library脚本的 内存泄露 ,当然你自己编写的脚本存在 死锁 的话,也会出现502现象。· 如果你发现mysql负载并不高,但是php-fpm的进程数和内存占用过高的话,恭喜你,大多数情况下是因为脚本存在死锁。2. 既然找到了是php的问题,如何去定位php脚本呢?
默认的 request_slowlog_timeout 是0,php的慢脚本日志是关闭的,因此设置为大于0的n,表示执行时间超过n的脚本将记录进入slowlog里。
然后监测到网站存在问题的时候查看下slowlog即可发现慢脚本,对脚本进行检查处理即可。
long_query_time=2中的2表示查询超过两秒才记录.
如果日志内容很多,用眼睛一条一条去看会累死,mysql自带了分析的工具,使用方法如下:
mysql慢查询日志查询手册: http://dev.mysql.com/doc/refman/5.1/en/mysqldumpslow.html
默认的 request_slowlog_timeout 是0,php的慢脚本日志是关闭的,因此设置为大于0的n,表示执行时间超过n的脚本将记录进入slowlog里。
然后监测到网站存在问题的时候查看下slowlog即可发现慢脚本,对脚本进行检查处理即可。
3. 2、Mysql的慢查询日志
mysql慢查询日志对于跟踪有问题的查询非常有用,可以分析出当前程序里有很耗费资源的sql语句,那如何打开mysql的慢查询日志记录呢?其实打开mysql的慢查询日志很简单,只需要在mysql的配置文件里的[mysqld]下面加上如下代码:long_query_time=2中的2表示查询超过两秒才记录.
如果日志内容很多,用眼睛一条一条去看会累死,mysql自带了分析的工具,使用方法如下:
mysql慢查询日志查询手册: http://dev.mysql.com/doc/refman/5.1/en/mysqldumpslow.html
相关文章推荐
- PHP慢脚本日志和Mysql的慢查询日志
- PHP慢脚本日志和Mysql的慢查询日志
- PHP慢脚本日志和Mysql的慢查询日志(转)
- PHP慢脚本日志和Mysql的慢查询日志
- PHP慢脚本日志和Mysql的慢查询日志
- PHP慢脚本日志和Mysql的慢查询日志
- 结合PHP脚本添加和查询MySQL数据的基本教程
- shell脚本分析mysql慢查询日志(slow log)
- mysql高级----查询截取分析(二):批量插入数据脚本、用show profile分析sql、全局查询日志
- mysql慢查询和php-fpm慢日志
- Mysql慢查询日志脚本
- php 写mysql查询日志
- PHP脚本执行效率及mysql查询效率
- shell脚本分析mysql慢查询日志(slow log)
- 结合PHP脚本添加和查询MySQL数据的基本教程
- mysql 中批量创建日志表信息脚本
- mysql慢查日志分析神器:pt-query-digest查询日志分析工具
- MySQL的慢查询日志
- Windows + Linux Mysql慢查询日志开启的方法
- mysql在开发中的优化技巧和慢查询日志的配置