我想查看MySQL中的日志以查看我的应用程序正在运行的查询。我怎样才能做到这一点?我正在使用XAMPP,MySQL的目录是C:\ xampp \ mysql。
这是我show variables like '%log%';
mysql> show variables like '%log%';
+---------------------------------+------------------------------------+
| Variable_name | Value |
+---------------------------------+------------------------------------+
| back_log | 50 |
| binlog_cache_size | 32768 |
| binlog_format | STATEMENT |
| expire_logs_days | 0 |
| general_log | OFF |
| general_log_file | C:/xampp/mysql/data/mysql.log |
| innodb_flush_log_at_trx_commit | 1 |
| innodb_locks_unsafe_for_binlog | OFF |
| innodb_log_buffer_size | 8388608 |
| innodb_log_file_size | 5242880 |
| innodb_log_files_in_group | 2 |
| innodb_log_group_home_dir | C:\xampp\mysql\data\ |
| innodb_mirrored_log_groups | 1 |
| log | OFF |
| log_bin | OFF |
| log_bin_trust_function_creators | OFF |
| log_bin_trust_routine_creators | OFF |
| log_error | C:\xampp\mysql\data\mysql.err |
| 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 | 1073741824 |
| 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 | C:/xampp/mysql/data/mysql-slow.log |
| sql_log_bin | ON |
| sql_log_off | OFF |
| sql_log_update | ON |
| sync_binlog | 0 |
+---------------------------------+------------------------------------+
37 rows in set (0.00 sec)
答案 0 :(得分:32)
通过mysql命令行中的以下查询启用常规查询日志
SET GLOBAL general_log = 'ON';
现在打开C:/xampp/mysql/data/mysql.log
并检查查询日志
如果失败,请打开my.cnf
文件。对于Windows my.ini
文件并在那里启用它。只需在[mysqld]
部分
[mysqld]
general_log = 1
注意:在xampp my.ini
文件中可以找到xampp\mysql
或c:\windows
目录
答案 1 :(得分:1)
答案 2 :(得分:1)
在OFFICIAL MYSQL网站上给出。
SET GLOBAL general_log = 'ON';
您还可以使用自定义路径:
[mysqld]
# Set Slow Query Log
long_query_time = 1
slow_query_log = 1
slow_query_log_file = "C:/slowquery.log"
#Set General Log
log = "C:/genquery.log"
答案 3 :(得分:0)
似乎通用查询日志是您需要的文件。对此的一个很好的介绍是http://dev.mysql.com/doc/refman/5.1/en/query-log.html
答案 4 :(得分:0)
对我来说,general_log没有用。但是将此添加到my.ini有效
[mysqld]
log-output=FILE
slow_query_log = 1
slow_query_log_file = "d:/temp/developer.log"