Je veux vérifier le journal dans MySQL pour voir les requêtes qui sont exécutées par mon application. Comment puis-je faire ceci? J'utilise XAMPP et le répertoire de MySQL est C:\xampp\mysql.
C'est ce que j'obtiens quand je le fais 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)
Activer le journal des requêtes générales par la requête suivante dans la ligne de commande mysql
SET GLOBAL general_log = 'ON';
Ouvert C:/xampp/mysql/data/mysql.log
et vérifier le journal des requêtes
En cas d'échec, ouvrez votre my.cnf
fichier. Pour Windows, son my.ini
fichier et activez-le. Assurez-vous simplement que c'est dans le [mysqld]
section
[mysqld]
general_log = 1
Remarque: dans xampp my.ini
le fichier se trouve dans xampp\mysql
ou dans c:\windows
répertoire
Son donné sur le site Web OFFICIEL MYSQL.
SET GLOBAL general_log = 'ON';
Vous pouvez également utiliser un chemin personnalisé:
[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"
Configurez le General Query Log .
Pour moi, general_log n'a pas fonctionné. Mais l'ajouter à my.ini a fonctionné
[mysqld]
log-output=FILE
slow_query_log = 1
slow_query_log_file = "d:/temp/developer.log"
Il semble que le journal général des requêtes soit le fichier dont vous avez besoin. Une bonne introduction à cela est à http://dev.mysql.com/doc/refman/5.1/en/query-log.html