>데이터 베이스 >MySQL 튜토리얼 >Linux에서 mysql 데이터베이스 작업 기록을 보는 방법

Linux에서 mysql 데이터베이스 작업 기록을 보는 방법

王林
王林앞으로
2023-06-01 17:52:191978검색


Linux에서 mysql 데이터베이스 작업 기록을 보는 구체적인 방법

MySQL의 General_log 매개변수는 MySQL 쿼리 로그의 열기 및 닫기를 제어하는 ​​데 사용되며, General_log_file 매개변수는 쿼리 위치를 제어하는 ​​데 사용됩니다. 통나무. MySQL 데이터베이스에 쿼리 로깅이 활성화되어 있는지 확인하려면 다음 명령을 사용할 수 있습니다. General_log를 ON으로 설정하면 쿼리 로그가 켜지고, OFF로 설정하면 쿼리 로그가 꺼집니다.

mysql> show variables like '%general_log%';
+------------------+------------------------------+
| Variable_name    | Value                        |
+------------------+------------------------------+
| general_log      | OFF                          |
| general_log_file | /var/lib/mysql/DB-Server.log |
+------------------+------------------------------+
2 rows in set (0.00 sec)

또한 MySQL의 쿼리 로그는 파일 쓰기 또는 데이터 테이블 쓰기를 지원합니다. 이는 아래와 같이 log_output 매개변수로 제어됩니다.

mysql> show variables like 'log_output';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| log_output    | FILE  |
+---------------+-------+
1 row in set (0.00 sec)

MySQL 쿼리 로그 열기

mysql> set global general_log = on;
Query OK, 0 rows affected (0.11 sec)

mysql> show variables like 'general_log';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| general_log   | ON    |
+---------------+-------+
1 row in set (0.02 sec)

MySQL 쿼리 로그 닫기

mysql> show variables like 'general_log';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| general_log   | ON    |
+---------------+-------+
1 row in set (0.01 sec)

mysql> set global general_log=off;
Query OK, 0 rows affected (0.01 sec)

mysql> show variables like 'general_log';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| general_log   | OFF   |
+---------------+-------+
1 row in set (0.00 sec)

설정 로그 출력 방법은 테이블입니다

log_output=table로 설정하면 로그 결과가 gengera_log라는 테이블에 기록됩니다. 이 테이블의 기본 엔진은 CSV입니다.

mysql> show variables like 'log_output';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| log_output    | FILE  |
+---------------+-------+
1 row in set (0.00 sec)

mysql> set global log_output='table';
Query OK, 0 rows affected (0.00 sec)

mysql> show variables like 'log_output';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| log_output    | TABLE |
+---------------+-------+
1 row in set (0.01 sec)

쿼리 로그 정보를 확인하세요.

mysql> select * from mysql.general_log;
+---------------------+---------------------------+-----------+-----------+--------------+----------------------------------+
| event_time          | user_host                 | thread_id | server_id | command_type | argument                         |
+---------------------+---------------------------+-----------+-----------+--------------+----------------------------------+
| 2017-07-06 12:32:05 | root[root] @ localhost [] |         1 |         1 | Query        | show variables like 'general%'   |
| 2017-07-06 12:32:28 | root[root] @ localhost [] |         1 |         1 | Query        | show variables like 'log_output' |
| 2017-07-06 12:32:41 | root[root] @ localhost [] |         1 |         1 | Query        | select * from MyDB.test          |
| 2017-07-06 12:34:36 | [root] @ localhost []     |         3 |         1 | Connect      | root@localhost on                |
| 2017-07-06 12:34:36 | root[root] @ localhost [] |         3 |         1 | Query        | KILL QUERY 1                     |
| 2017-07-06 12:34:36 | root[root] @ localhost [] |         3 |         1 | Quit         |                                  |
| 2017-07-06 12:34:51 | root[root] @ localhost [] |         1 |         1 | Query        | select * from mysql.general_log  |
+---------------------+---------------------------+-----------+-----------+--------------+----------------------------------+
7 rows in set (0.02 sec)


위 내용은 Linux에서 mysql 데이터베이스 작업 기록을 보는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제