首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用PHP打开MySQL慢查询日志

用PHP打开MySQL慢查询日志
EN

Stack Overflow用户
提问于 2010-01-05 05:51:44
回答 5查看 1K关注 0票数 0

我在用PHP打开MySQL的慢查询日志时遇到了问题。我正在编写一个调试器,并试图访问日志文件,但它给出了一条权限被拒绝的消息。

代码:

代码语言:javascript
复制
$log = file_get_contents('/var/log/mysql/mysql-slow.log');

响应(错误):

代码语言:javascript
复制
Warning: file_get_contents(...): failed to open stream: Permission denied ...

我可以很好地从终端cat文件。我已将日志文件更改为0777,结果相同。当MySQL正在运行时,是否不允许此操作?有什么办法可以解决这个问题吗?

PHP5.2.10,Ubuntu9.10,MySQL 5.1.37

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-01-05 05:55:19

据猜测,运行php的用户与日志文件的所有者不同,或者不在同一组中。

您可以尝试更改日志文件的所有者,但这可能会阻止mysql拥有对其进行写入的权限。

你能用fopen读取这个文件吗?

票数 1
EN

Stack Overflow用户

发布于 2010-01-05 06:03:40

另外,确保目录/var/log/mysql至少对你的has服务器的用户有执行权限(711),我相信在Ubuntu中默认是700。

票数 2
EN

Stack Overflow用户

发布于 2010-01-05 06:01:15

你试过波本了吗?

代码语言:javascript
复制
$fp=popen("cat /var/log/mysql/mysql-slow.log","r");
while (!feof($fp)) {
    $buffer = fgets($fp, 4096);
    $croninf .= '<tr><td>' . $buffer . '</td></tr>' . "\n";
} 
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2002497

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档