with recursive limit set set with recursive iteration max_recursive_iterations set max_recursive_iterations mysql recursive count
MariaDB with recursive 반복 제한 설정 / 1,000번, 1,000개 해제
mysql 에서 반복문으로 with recursive를 쓰는 과정에서 1000번 이상 돌아야하는데
이상하게 결과값이 1,001개만 나올때...!!!!
아무리 찾고 찾아봐도 잘 나오지 않았던 recusive 관련 설정!
🎄 설명
Maria DB Server System Variables 중에 max_recursive_iterations라는 녀석이 있다
이 변수는 recursive 반복의 최댓값을 설정하는 변수인데
마리아 10.6버전 이상은 기본 값이 1,000 이다
(마리아 10.5버전 이하는 설정 최대 값인 4,294,967,295 이다)
그러니까1,000번만 돌고 1,001개만 select 되었던 것!!
🎄 조회
설정되어있는 max_recursive_iterations 값을 조회하는 쿼리는 아래와 같다
show variables like 'max_recursive_iterations';
🎄 설정
SET global max_recursive_iterations = 3000;
SET session max_recursive_iterations = 3000;
이런 식으로 설정해주면 최대 3,000번까지 반복된다
global은 전역 session은 세션스코프의 변수를 설정하는거다
필요에 따라 설정하면됨
🎄 참고
MariaDB 공식 홈페이지의 내용과 링크이다
https://mariadb.com/kb/en/server-system-variables/#max_recursive_iterations
서칭결과가 많이 없어서 일단 공유해보는데 똑같은 문제를 겪는 사람이 있을까..?ㅋㅋㅋ