sql >> Database teknologi >  >> RDS >> Mysql

Hvordan logger jeg kun de rå forespørgsler i MySQL?

For at aktivere fuld logforespørgsel skal du tilføje følgende til din my.cnf:

log=/var/log/mysqldquery.log

Ovenstående vil logge alle forespørgsler til logfilen.

Glem ikke at genstarte mysql-tjenesten efter at have foretaget ændringer i filen my.cnf.

Eksempel på output fra handlinger via SequelPro (mac-klient):

090721 11:06:45      51 Query       ALTER TABLE `test` ADD `name` varchar(10) DEFAULT NULL
                     51 Query       SHOW COLUMNS FROM `test`
                     51 Query       SHOW INDEX FROM `test`
090721 11:06:57      51 Query       SHOW COLUMNS FROM `test`
                     51 Query       UPDATE `test` SET `id`='1', `name`='test' WHERE `id` = '1' AND `name` IS NULL LIMIT 1
                     51 Query       SELECT * FROM `test` LIMIT 0,100
                     51 Query       SELECT COUNT(1) FROM `test`   
090721 11:07:00      51 Query       UPDATE `test` SET `id`='2', `name`='test' WHERE `id` = '2' AND `name` IS NULL LIMIT 1
                     51 Query       SELECT * FROM `test` LIMIT 0,100
                     51 Query       SELECT COUNT(1) FROM `test`

På *NIX baserede systemer kan du bruge grep til at starte

grep 'SELECT\|INSERT\|UPDATE' querylog.log

Eller bliv mere tricky og begynd at gøre ting som:

grep 'SELECT\|INSERT\|UPDATE' querylog.log | awk '{$1="";$2="";print}'

Dette ville give dig noget som dette, ikke perfekt, men tættere på:

  51 Query UPDATE `test` SET `id`='2', `name`='test' WHERE `id` = '2' AND `name` IS NULL LIMIT 1
  SELECT * FROM `test` LIMIT 0,100
  SELECT COUNT(1) FROM `test`
  51 Query INSERT INTO `test` (`id`,`name`) VALUES ('3','testing')
  SELECT * FROM `test` LIMIT 0,100
  SELECT COUNT(1) FROM `test`


  1. MySQL 8 opret ny bruger med adgangskode, der ikke virker

  2. Mysql 5.7 FEJL 3143 (42000):Ugyldigt JSON-stiudtryk. Fejlen er omkring tegnposition 3

  3. Sådan får du kolonnekommentarer fra SQL

  4. MySQL:Vælg flere rækker, der indeholder værdier fra én kolonne