* 에러 메시지
SQLSTATE[HY000]: General error: 3699 Timeout exceeded in regular expression match.
* 해결 방법
regexp_time_limit 설정 변경
- 현재 값 보기
show GLOBAL variables like "regexp_time_limit";
- 기본값 : 32
- 단위 : 밀리초( milliseconds)
- 값 변경 예
SET GLOBAL regexp_time_limit=64;
- 서버 설정 파일 변경
C:\ProgramData\MySQL\MySQL Server 8.0\my.ini
/etc/mysql/my.cnf
regexp_time_limit=64
//-------------------------------------
주의! 성능저하가 있을수 있으므로,
regexp_time_limit 값을 변경하기 보다는 ,
운영에 적용되는 쿼리는 Timeout 에러가 나지 않도록 구성해야 한다.
반응형
'Code > Database (DB)' 카테고리의 다른 글
기간을 지정해서 백업하고 중복 에러 없이 복구하기 (0) | 2024.09.02 |
---|---|
동시에 2개의 필드 중복값을 제거하는 select 쿼리 (0) | 2024.09.01 |
mysql 문자열 검색 , 발견한 횟수(찾은 개수) 구하기 (0) | 2023.12.02 |
mysql 요일별 통계 정렬 (0) | 2023.11.24 |
[mysql] 여러 필드에서 한번에 문자열 찾기 (0) | 2023.11.24 |