首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >创建MySql日志

创建MySql日志
EN

Stack Overflow用户
提问于 2013-11-22 01:58:57
回答 2查看 115关注 0票数 0

Helllo,我的问题是:使用php,是否可以创建与MySQL数据库的所有交互日志,这些交互通常可以由phpMyadmin访问。是否有特定的查询或示例可供查看?谢谢您抽时间见我。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-11-22 02:08:09

捕获SQL日志的方法很简单。这个日志叫做普通日志。它捕获所有客户端执行的所有sql。

启用一般日志。

代码语言:javascript
复制
mysql> SET GLOBAL general_log = 'ON';

原木在哪里?

代码语言:javascript
复制
mysql> SHOW variables like '%general_log%';
+------------------+--------------------+
| Variable_name    | Value              |
+------------------+--------------------+
| general_log      | ON                 |
| general_log_file | /tmp/your_path.log |
+------------------+--------------------+

你想换个地方吗?

代码语言:javascript
复制
mysql> SET GLOBAL general_log_file = 'what you want';

关闭日志

代码语言:javascript
复制
mysql> SET GLOBAL general_log = 'OFF';

小心,一般的日志会变大,测试完成后,总是关闭日志。

票数 2
EN

Stack Overflow用户

发布于 2013-11-22 09:40:04

若要启用查询日志,请将其放在/etc/my.cnf中的[mysqld]部分中

代码语言:javascript
复制
log   = /path/to/query.log

请记住,这个日志文件在繁忙的服务器上会变得非常大。

最新情况:

从mysql 5.1.12开始,您应该使用

代码语言:javascript
复制
general_log=1

对于mysql 5.1.29,不建议使用log选项。指定日志文件的使用

代码语言:javascript
复制
general_log_file=/path/to/query.log

而不是。请参阅http://dev.mysql.com/doc/refman/5.6/en/query-log.html

启用数据库上的查询日志记录(请注意,字符串“表”应按字面顺序放置,而不应被任何表名所取代)

代码语言:javascript
复制
SET global general_log = 1;
SET global log_output = 'table';

查看日志

代码语言:javascript
复制
select * from mysql.general_log

禁用数据库上的查询日志记录

代码语言:javascript
复制
SET global general_log = 0;

参考:http://www.jovicailic.org/2012/07/how-to-enable-general-query-log-in-mysql-under-linux/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20135591

复制
相关文章

相似问题

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