Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

MySQL을 다시 시작하지 않고 MySQL 느린 쿼리 로그를 활성화하려면 어떻게 해야 합니까?

<시간/>

SET 문을 사용하여 MySQL 느린 쿼리 로그를 활성화할 수 있습니다.

다음은 구문입니다.

SET GLOBAL slow_query_log = 'Value';

위의 구문에서 값은 ON/OFF로 채울 수 있습니다. 느린 쿼리 로그를 활성화하려면 쿼리를 살펴보겠습니다.

mysql> SET GLOBAL slow_query_log = 'ON';
Query OK, 0 rows affected (0.00 sec)

느린 쿼리가 켜져 있는지 확인하려면 다음 쿼리를 구현하십시오 -

mysql> SHOW GLOBAL VARIABLES LIKE 'slow\_%';

다음은 출력입니다.

+---------------------+--------------------------+
| Variable_name       | Value                    |
+---------------------+--------------------------+
| slow_launch_time    | 2                        |
| slow_query_log      | ON                       |                     
| slow_query_log_file | DESKTOP-QN2RB3H-slow.log |
+---------------------+--------------------------+
3 rows in set (0.00 sec)

쿼리가 주어진 초를 초과하면 느린 쿼리 로그 파일에 들어가기 때문에 느린 쿼리 시간을 초 단위로 설정했습니다.

초를 설정할 수도 있습니다. 초를 설정하는 쿼리입니다.

mysql> SET GLOBAL long_query_time = 20;
Query OK, 0 rows affected (0.00 sec)

시간이 삽입되었는지 확인하려면.

mysql> SHOW GLOBAL VARIABLES LIKE 'long_query_time';

다음은 위 쿼리의 결과입니다.

+-----------------+-----------+
| Variable_name   | Value     |
+-----------------+-----------+
| long_query_time | 20.000000 |
+-----------------+-----------+
1 row in set (0.00 sec)

위의 작업을 수행한 후 로그를 플러시해야 합니다.

mysql> FLUSH LOGS;
Query OK, 0 rows affected (0.25 sec)

참고 − my.cnf 파일을 사용하여 영구적으로 비활성화할 수 있습니다. 설정 slow_query_log =0; 비활성화합니다.