MySQL Log Files -- Mysql 日志文件(转)
4.9 The MySQL Log Files
mysql提供不同功用的, 以便於你了解 mysqld生了什。
1. The error log: 所有 mysqld, 行和束生的息。
2. The isam log: 所有更 ISAM料表的作。
3. The query log: 所有的料以及行的查法。
4. The update log: 存所有更料的指令。
5. The binary log: Stores all statements that changes something. Used also for replication
6. The slow log: 所有查超 long_query_time或不使用索引的查作。
你可以在 mysqld的料目中找到所有的。
4.9.2 The General Query Log
如果想知道 mysqld面生了什事的, 你就在 mysqld加上 --log[=file]。 一, 所有的及查作都被入中。 (名 'hostname'.log) 在路程式的除方面很有助。
中每料入的是 mysqld接收到指令的候, 有可能跟 sql指令行的序不同。 因此, 本的入和 update log binary log不同。
4.9.3 The Update Log
你在行 mysqld, 如果有加上 --log-update[=file_name]的, mysqld所有於更新料的 SQL commands入中。 在有指定 file_name的情下,用主名作的案名。 如果你指定的案名不包含完整路的, 放置在料目中。 如果案名有指定副名的, mysqld以 "file_name.###"作的名, 其中 ###是阿拉伯字, 每下列生, 字就加一。
1. 行 mysqladmin refresh
2. 行 mysqladmin flush-logs
3. 行 FLUSH LOGS sql指令
4. 重新 mysqld
update logging有一特就是它只 "真正"改料的作。 因此, 有 where的 updata或 delete指令如果有更任何料的, 作就不被入。 甚至在 updata指令有更位值的情下, 指令也不被下。
update logging行的是介於 sql指令束以及 lock解以前。 可以保所有的是依照行的序入中。
你可以行下列指令用 update log file更新料。 (假你的 update log files的名格式 file_name.###)
shell> ls -1 -t -r file_name.[0-9]* | xargs cat | mysql
ls指令加上 -1 -t -r三後, 便能按序排列所有的。
4.9.4 Binary Update Log
以後 binary update log用取代 update log, 因此希望你能快改用 binary update log。
binary update log案以更有效率的格式 update log面的。 此外, 面每更新料的指令耗多少。 有更料的指令不被入中。 如果想要所有的 sql指令, 你使用 general query log。
只要在 mysqld加上 --log-bin[=file_name]就能改用 。binary update log。
binary update log的副名命名方式和 update log一, 附名增的也和 update log相同。 或是大小到 max_binlog_size上限, mysqld自生一新的。 你可以透 reset master sql指令除所有目前未被的 binary update log files。 (只保留目前使用中的)
mysqld有跟 binary update log有:
1. binlog-do-db=database_name: 只某料的更料
2. binlog-ignore-db=database_name: 不某料的更料
了要知道曾生哪些 binary update log files, mysqld生一 binary log index, 面包含所有使用的 binary update log的名。 binary log index的名和 binary update log相同, 不副名改 index。
你可以用 mysqlbinlog指令 binary update log的容。 例如你可以行下列指令以 binary update log的容更新某 mysql server。
shell> mysqlbinlog log-file | mysql -h server_name
你也可以用 mysqlbinlog取端 mysql server的 binary update log。 行 mysqlbinlog --help你更了解如何使用程式。
binary update log入的和 update log相同。 以保能正地每指令行的序。
mysql提供不同功用的, 以便於你了解 mysqld生了什。
1. The error log: 所有 mysqld, 行和束生的息。
2. The isam log: 所有更 ISAM料表的作。
3. The query log: 所有的料以及行的查法。
4. The update log: 存所有更料的指令。
5. The binary log: Stores all statements that changes something. Used also for replication
6. The slow log: 所有查超 long_query_time或不使用索引的查作。
你可以在 mysqld的料目中找到所有的。
4.9.2 The General Query Log
如果想知道 mysqld面生了什事的, 你就在 mysqld加上 --log[=file]。 一, 所有的及查作都被入中。 (名 'hostname'.log) 在路程式的除方面很有助。
中每料入的是 mysqld接收到指令的候, 有可能跟 sql指令行的序不同。 因此, 本的入和 update log binary log不同。
4.9.3 The Update Log
你在行 mysqld, 如果有加上 --log-update[=file_name]的, mysqld所有於更新料的 SQL commands入中。 在有指定 file_name的情下,用主名作的案名。 如果你指定的案名不包含完整路的, 放置在料目中。 如果案名有指定副名的, mysqld以 "file_name.###"作的名, 其中 ###是阿拉伯字, 每下列生, 字就加一。
1. 行 mysqladmin refresh
2. 行 mysqladmin flush-logs
3. 行 FLUSH LOGS sql指令
4. 重新 mysqld
update logging有一特就是它只 "真正"改料的作。 因此, 有 where的 updata或 delete指令如果有更任何料的, 作就不被入。 甚至在 updata指令有更位值的情下, 指令也不被下。
update logging行的是介於 sql指令束以及 lock解以前。 可以保所有的是依照行的序入中。
你可以行下列指令用 update log file更新料。 (假你的 update log files的名格式 file_name.###)
shell> ls -1 -t -r file_name.[0-9]* | xargs cat | mysql
ls指令加上 -1 -t -r三後, 便能按序排列所有的。
4.9.4 Binary Update Log
以後 binary update log用取代 update log, 因此希望你能快改用 binary update log。
binary update log案以更有效率的格式 update log面的。 此外, 面每更新料的指令耗多少。 有更料的指令不被入中。 如果想要所有的 sql指令, 你使用 general query log。
只要在 mysqld加上 --log-bin[=file_name]就能改用 。binary update log。
binary update log的副名命名方式和 update log一, 附名增的也和 update log相同。 或是大小到 max_binlog_size上限, mysqld自生一新的。 你可以透 reset master sql指令除所有目前未被的 binary update log files。 (只保留目前使用中的)
mysqld有跟 binary update log有:
1. binlog-do-db=database_name: 只某料的更料
2. binlog-ignore-db=database_name: 不某料的更料
了要知道曾生哪些 binary update log files, mysqld生一 binary log index, 面包含所有使用的 binary update log的名。 binary log index的名和 binary update log相同, 不副名改 index。
你可以用 mysqlbinlog指令 binary update log的容。 例如你可以行下列指令以 binary update log的容更新某 mysql server。
shell> mysqlbinlog log-file | mysql -h server_name
你也可以用 mysqlbinlog取端 mysql server的 binary update log。 行 mysqlbinlog --help你更了解如何使用程式。
binary update log入的和 update log相同。 以保能正地每指令行的序。