2011-11-01 78 views
-1

我需要打开/启用它。我在网上发现了一些信息,但现在我很困惑,我不知道从哪里开始。MySQL记录混乱

这是我到目前为止。我登录到MySQL作为根和做的:

show variables like '%log%'; 

,并得到:

Variable_name     | Value       | 
+---------------------------------+----------------------------------+ 
| back_log      | 50        | 
| binlog_cache_size    | 32768       | 
| binlog_format     | STATEMENT      | 
| expire_logs_days    | 10        | 
| general_log      | ON        | 
| general_log_file    | /var/lib/mysql/helloise.log  | 
| innodb_flush_log_at_trx_commit | 1        | 
| innodb_locks_unsafe_for_binlog | OFF        | 
| innodb_log_buffer_size   | 1048576       | 
| innodb_log_file_size   | 5242880       | 
| innodb_log_files_in_group  | 2        | 
| innodb_log_group_home_dir  | ./        | 
| innodb_mirrored_log_groups  | 1        | 
| log        | ON        | 
| log_bin       | OFF        | 
| log_bin_trust_function_creators | OFF        | 
| log_bin_trust_routine_creators | OFF        | 
| log_error      | /var/log/mysql/error.log   | 
| log_output      | FILE        | 
| log_queries_not_using_indexes | OFF        | 
| log_slave_updates    | OFF        | 
| log_slow_queries    | OFF        | 
| log_warnings     | 1        | 
| max_binlog_cache_size   | 4294963200      | 
| max_binlog_size     | 104857600      | 
| max_relay_log_size    | 0        | 
| relay_log      |         | 
| relay_log_index     |         | 
| relay_log_info_file    | relay-log.info     | 
| relay_log_purge     | ON        | 
| relay_log_space_limit   | 0        | 
| slow_query_log     | OFF        | 
| slow_query_log_file    | /var/lib/mysql/helloise-slow.log | 
| sql_log_bin      | ON        | 
| sql_log_off      | OFF        | 
| sql_log_update     | ON        | 
| sync_binlog      | 0 

我做:设置全局general_log = 1设置general_log = ON。将所有查询记录在/var/lib/mysql/helloise.log中吗?

,当我尝试通过[email protected]:/var/lib$ cd mysql/访问mysql目录,我得到许可被拒绝

,然后我也有一个日志目录:

[email protected]:/var/log$ 

有一大堆的日志文件前的:mysql的。日志

哪个日志文件将包含我的查询,所以我可以跟踪我的数据库正在做什么,看看查询需要多长时间?

回答

0

冷酷无情,因为你没有权限阅读它。试试

ls -l 

对该文件,看看什么权限定义。那么你可以使用chmod来更改权限。或者只是尝试以root用户身份阅读该文件。

一般的日志查询日志记录功能,从指导阅读,:

一般查询日志是一个什么样的mysqld是做一般的记录。当客户端连接或 断开时, 服务器将信息写入此日志,并记录从客户端接收到的每条SQL语句。如果您怀疑 客户端中存在错误,并且想确切知道客户端发送给mysqld的内容,则通用查询日志可能非常有用。

错误日志:

错误日志包含指示的mysqld时开始 和停止,也服务器 运行时发生的任何严重错误信息。如果mysqld发现需要自动检查或修复的表格,它会向错误日志写入消息。

对于理解我建议你阅读该网站的区别: http://dev.mysql.com/doc/refman/5.1/en/server-logs.html

包含查询的文件是一个在/ var/lib中/ MySQL的/ helloise。登录

对于慢查询日志可以查看:

http://dev.mysql.com/doc/refman/5.1/en/slow-query-log.html

它会记录所有的花费超过long_query_time时间秒钟的时间(即变量必须由自己定义)查询。我没有找到一种方法来显示查询的执行时间,但检查页面http://dev.mysql.com/doc/refman/5.1/en/log-destinations.html它可以帮助您如何配置一般/ slowquery日志记录。 希望得到这个帮助。

+0

谢谢你设法看到/var/lib/mysql/helloise.log中有什么,我有一种方法可以操纵什么信息发送到这个文件,因为我需要跟踪它需要多长时间来做一个查询,查看日期..只列出时间,Id命令,参数..任何其他信息,我可以通过配置一些设置在这里得到?谢谢:) –

+0

检查我的编辑。 :) – Ivan