반응형
런타임에 long_query_time 변수를 변경할 수 없는 이유
MySQL 버전 5.1.66을 사용하고 있습니다.long_query_time 변수가 동적인 것을 보았지만 시도해보니
set GLOBAL long_query_time=1;
위의 수술을 다시 한 후에 나는 시도했습니다.
mysql> show variables like 'long_query_time';
+-----------------+-----------+
| Variable_name | Value |
+-----------------+-----------+
| long_query_time | 10.000000 |
+-----------------+-----------+
1 row in set (0.00 sec)
mysql 콘솔에서 변경되지 않는데, 왜죠?
GLOBAL 시스템 변수를 설정하지만 SESSION 변수를 쿼리합니다.현재 세션에 대해 GLOBAL 변수 설정을 적용하려면 @@SESSION.long_query_time 변수를 다시 연결하거나 설정해야 합니다.(기본적으로 SHOW VARILS는 세션 변수를 표시합니다.)
다음은 예입니다.
mysql> SHOW SESSION VARIABLES LIKE "long_query_time";
+-----------------+-----------+
| Variable_name | Value |
+-----------------+-----------+
| long_query_time | 10.000000 |
+-----------------+-----------+
mysql> SET @@GLOBAL.long_query_time = 1;
mysql> SHOW GLOBAL VARIABLES LIKE "long_query_time";
+-----------------+----------+
| Variable_name | Value |
+-----------------+----------+
| long_query_time | 1.000000 |
+-----------------+----------+
mysql> SHOW VARIABLES LIKE "long_query_time";
+-----------------+-----------+
| Variable_name | Value |
+-----------------+-----------+
| long_query_time | 10.000000 |
+-----------------+-----------+
MySQL 8.0은 다음을 소개했습니다.SET PERSIST ..
동적으로 설정하는 구성을 유지하는 데 도움이 될 수 있는 구문입니다.MySQL 8.0 설명서 참조
mysql(cfr. http://dev.mysql.com/doc/refman/5.1/en/set-statement.html) 에서 시스템 변수 값을 변경해도 세션에 이미 연결된 클라이언트의 값은 변경되지 않습니다.
변경사항은 서버 재부팅, 이후 변경사항 또는 세션 만료 시까지 지속됩니다.
더 자세한 사항은 http://bugs.mysql.com/bug.php?id=38704 을 참조하시기 바랍니다.
언급URL : https://stackoverflow.com/questions/15541603/why-i-could-not-alter-the-variable-long-query-time-variable-at-runtime
반응형
'source' 카테고리의 다른 글
NA만 포함된 열을 삭제하는 방법은 무엇입니까? (0) | 2023.10.14 |
---|---|
Xcode 4.2 기본 설정인 "무선 연결 장치 지원"의 기능은 무엇입니까? (0) | 2023.10.14 |
문자열에서 X 문서 채우기 (0) | 2023.10.14 |
htaccess 파일에서 IP 범위 차단 (0) | 2023.10.14 |
C/C++ 효율적 비트 배열 (0) | 2023.10.14 |