0

私はmysql-xamppを使用しています!!

基本的に、すべてのクエリを1時間監視し、ログをファイルにダンプしたいと思います。

過去1時間に入力したクエリをテキストファイルに記録するにはどうすればよいですか?

出来ますか?

過去1時間に使用したクエリを貼り付けます。

SHOW CREATE TABLE `hr_test`.`auction`;
SHOW CREATE TABLE `hr_test`.`auction_log`;
SHOW CREATE TABLE `hr_test`.`error_log`;
SELECT  `timestamp`,  `username`,  `instance`,  `database_name`,  `error_stack` FROM `hr_test`.`error_log` LIMIT 1000;
SHOW CREATE TABLE `hr_test`.`error_log`;
SELECT `DEFAULT_COLLATION_NAME` FROM `information_schema`.`SCHEMATA` WHERE `SCHEMA_NAME`='information_schema';
SHOW TABLE STATUS FROM `information_schema`;
SHOW FUNCTION STATUS WHERE `Db`='information_schema';
SHOW PROCEDURE STATUS WHERE `Db`='information_schema';
SHOW TRIGGERS FROM `information_schema`;
SHOW EVENTS FROM `information_schema`;
SELECT `DEFAULT_COLLATION_NAME` FROM `information_schema`.`SCHEMATA` WHERE `SCHEMA_NAME`='performance_schema';
SHOW TABLE STATUS FROM `performance_schema`;
SHOW FUNCTION STATUS WHERE `Db`='performance_schema';
SHOW PROCEDURE STATUS WHERE `Db`='performance_schema';
SHOW TRIGGERS FROM `performance_schema`;
SHOW EVENTS FROM `performance_schema`;
/* SQL Error (1044): Access denied for user 'pma'@'192.168.1.69' to database 'performance_schema' */
SELECT `DEFAULT_COLLATION_NAME` FROM `information_schema`.`SCHEMATA` WHERE `SCHEMA_NAME`='phpmyadmin';
SHOW TABLE STATUS FROM `phpmyadmin`;
SHOW FUNCTION STATUS WHERE `Db`='phpmyadmin';
SHOW PROCEDURE STATUS WHERE `Db`='phpmyadmin';
SHOW TRIGGERS FROM `phpmyadmin`;
SHOW EVENTS FROM `phpmyadmin`;
USE `phpmyadmin`;
SHOW CREATE TABLE `phpmyadmin`.`pma_tracking`;
SELECT  `db_name`,  `table_name`,  `version`,  `date_created`,  `date_updated`,  LEFT(`schema_snapshot`, 256),  LEFT(`schema_sql`, 256),  LEFT(`data_sql`, 256),  `tracking`,  `tracking_active` FROM `phpmyadmin`.`pma_tracking` LIMIT 1000;
SHOW CREATE TABLE `phpmyadmin`.`pma_tracking`;
SELECT `DEFAULT_COLLATION_NAME` FROM `information_schema`.`SCHEMATA` WHERE `SCHEMA_NAME`='system_audit';
SHOW TABLE STATUS FROM `system_audit`;
SHOW FUNCTION STATUS WHERE `Db`='system_audit';
SHOW PROCEDURE STATUS WHERE `Db`='system_audit';
SHOW TRIGGERS FROM `system_audit`;
SHOW EVENTS FROM `system_audit`;
USE `system_audit`;
SHOW CREATE TABLE `system_audit`.`systeminformation`;
SELECT  `Machine_Name`,  `Serial_Number`,  `System_Manufacturer`,  `System_Model`,  `Motherboard_Manufacturer`,  `Motherboard_Model`,  `Chassis_Type`,  `System_Type`,  `Physical_Memory`,  `RAM_Capacity`,  `RAM_Slots`,  `BIOS_Description`,  `BIOS_Date`,  `CENTRAL PROCESSING UNIT (CPU)`,  `CPU_Type` FROM `system_audit`.`systeminformation` LIMIT 1000;
SHOW CREATE TABLE `system_audit`.`systeminformation`;
SELECT  `Machine_Name`,  `Serial_Number`,  `System_Manufacturer`,  `System_Model`,  `Motherboard_Manufacturer`,  `Motherboard_Model`,  `Chassis_Type`,  `System_Type`,  `Physical_Memory`,  `RAM_Capacity`,  `RAM_Slots`,  `BIOS_Description`,  `BIOS_Date`,  `CENTRAL PROCESSING UNIT (CPU)`,  `CPU_Type` FROM `system_audit`.`systeminformation` LIMIT 1000;
SHOW CREATE TABLE `system_audit`.`systeminformation`;
USE `phpmyadmin`;
SELECT `DEFAULT_COLLATION_NAME` FROM `information_schema`.`SCHEMATA` WHERE `SCHEMA_NAME`='mysql';
SHOW TABLE STATUS FROM `mysql`;
SHOW FUNCTION STATUS WHERE `Db`='mysql';
SHOW PROCEDURE STATUS WHERE `Db`='mysql';
SHOW TRIGGERS FROM `mysql`;
SHOW EVENTS FROM `mysql`;
USE `mysql`;
SHOW CREATE TABLE `mysql`.`time_zone_transition`;
SELECT  `Time_zone_id`,  `Transition_time`,  `Transition_type_id` FROM `mysql`.`time_zone_transition` LIMIT 1000;
SHOW CREATE TABLE `mysql`.`time_zone_transition`;
SHOW TABLE STATUS LIKE 'time_zone_transition';
SHOW CREATE TABLE `mysql`.`time_zone_transition_type`;
SELECT  `Time_zone_id`,  `Transition_type_id`,  `Offset`,  `Is_DST`,  `Abbreviation` FROM `mysql`.`time_zone_transition_type` LIMIT 1000;
SHOW CREATE TABLE `mysql`.`time_zone_transition_type`;
SHOW TABLE STATUS LIKE 'time_zone_transition_type';
SELECT  `Time_zone_id`,  `Transition_type_id`,  `Offset`,  `Is_DST`,  `Abbreviation` FROM `mysql`.`time_zone_transition_type` LIMIT 1000;
SHOW CREATE TABLE `mysql`.`time_zone_transition_type`;
SHOW TABLE STATUS LIKE 'time_zone_transition_type';
SHOW CREATE TABLE `mysql`.`help_topic`;
SELECT  `help_topic_id`,  `name`,  `help_category_id`,  LEFT(`description`, 256),  LEFT(`example`, 256),  `url` FROM `mysql`.`help_topic` LIMIT 1000;
SHOW CREATE TABLE `mysql`.`help_topic`;
SELECT  `help_topic_id`,  `name`,  `help_category_id`,  LEFT(`description`, 256),  LEFT(`example`, 256),  `url` FROM `mysql`.`help_topic` LIMIT 1000;
SHOW CREATE TABLE `mysql`.`help_topic`;
SHOW CREATE TABLE `mysql`.`help_keyword`;
SELECT  `help_keyword_id`,  `name` FROM `mysql`.`help_keyword` LIMIT 1000;
SHOW CREATE TABLE `mysql`.`help_keyword`;
SELECT  `help_keyword_id`,  `name` FROM `mysql`.`help_keyword` LIMIT 1000;
SHOW CREATE TABLE `mysql`.`help_keyword`;
SHOW CREATE TABLE `mysql`.`help_category`;
SELECT  `help_category_id`,  `name`,  `parent_category_id`,  `url` FROM `mysql`.`help_category` LIMIT 1000;
SHOW CREATE TABLE `mysql`.`help_category`;
SELECT  `help_category_id`,  `name`,  `parent_category_id`,  `url` FROM `mysql`.`help_category` LIMIT 1000;
SHOW CREATE TABLE `mysql`.`help_category`;
SHOW CREATE TABLE `mysql`.`general_log`;
SELECT  `event_time`,  `user_host`,  `thread_id`,  `server_id`,  `command_type`,  `argument` FROM `mysql`.`general_log` LIMIT 1000;
SHOW CREATE TABLE `mysql`.`general_log`;
SELECT  `event_time`,  `user_host`,  `thread_id`,  `server_id`,  `command_type`,  `argument` FROM `mysql`.`general_log` LIMIT 1000;
SHOW CREATE TABLE `mysql`.`general_log`;
SHOW VARIABLES LIKE '%log_file%';
/* 0 rows affected, 4 rows found. Duration for 1 query: 0.000 sec. */
4

2 に答える 2

1

general_logを有効にしてサーバーを再起動し、1時間後に無効にして(パフォーマンスに影響し、ファイルが大きくなる可能性があるため)、再起動できます。

于 2012-12-14T08:42:51.097 に答える
0

mysql履歴ファイルがあなたが探しているものだと思いますか?.mysql_historyデータベースユーザーのホームディレクトリで探します。

ファイルにアクセスするには、次の.mysql_historyコマンドを実行します- cat ~/.mysql_history。現在のユーザーがデータベースユーザーでない場合は、データベースユーザーのホームディレクトリにcdしてから、を実行する必要がありますcat .mysql_history

データベースにどのOSを使用していますか?

于 2012-12-14T07:22:57.160 に答える