mysql_connection_수가_214개로_고정되는_문제

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

다음 판
이전 판
mysql_connection_수가_214개로_고정되는_문제 [2020/09/09 01:35] – 만듦 koovmysql_connection_수가_214개로_고정되는_문제 [2021/07/21 07:45] (현재) koov
줄 24: 줄 24:
 </WRAP> </WRAP>
 online으로 설정한 값은 즉시 반영된다. online으로 설정한 값은 즉시 반영된다.
-혹은 영구적으로 my.cnf 혹은 옵션으로 사용하고 있는 설정파일에 추가하고 서비스를 재시작하면 된다.+혹은 영구적으로 ''my.cnf'' 혹은 옵션으로 사용하고 있는 설정파일에 추가하고 서비스를 재시작하면 된다.
  
 <WRAP prewrap> <WRAP prewrap>
줄 49: 줄 49:
 connection 수가 변경되지 않는다. connection 수가 변경되지 않는다.
  
-찾아본 결과 mysql에서 동시에 오픈할 수 있는 file descriptor의 수에 따라 제한이 된다고 한다.+찾아본 결과 mysql에서 동시에 오픈할 수 있는 ''file descriptor''의 수에 따라 제한이 된다고 한다.
 mysql에서 커넥션 별로 소켓을 열어 연결을 하고 있기 때문이다. mysql에서 커넥션 별로 소켓을 열어 연결을 하고 있기 때문이다.
 즉 mysql 데몬이 기동할때 설정된 ''nofiles'' 값에 의해 영향을 받기 때문이다.  즉 mysql 데몬이 기동할때 설정된 ''nofiles'' 값에 의해 영향을 받기 때문이다. 
줄 80: 줄 80:
  
 따라서 따라서
-1024 = 10 + 214 + 400 * 2+''1024 = 10 + 214 + 400 * 2''
  
 딱 맞아 떨어진다! 딱 맞아 떨어진다!
  
 위의 문제로! 위의 문제로!
-online으로 변경했을 때도, variable의 max_connections 값은 바꼈지만 실제론 max에 미치진 않아도 어느 정도 커넥션이 몰리면 더이상 접속이 불가능한 상황이 나타나는 것 같다. +online으로 변경했을 때도, variable의 ''max_connections'' 값은 바꼈지만 실제론 max에 미치진 않아도 어느 정도 커넥션이 몰리면 더이상 접속이 불가능한 상황이 나타나는 것 같다. 
-(max_connections보다 많은 커넥션이 요청되면 Too many connections이라는 오류 메시지가 나타지만 file descriptor의 수가 부족해서 연결이 실패하는 경우엔 Too many connections 메시지가 나타나지 않는 것 같다. file open을 하지 못하면 Too many open files. 에러메시지가 난다고 하지만, 단순히 커넥션을 하지 못하는 메시지가 나타났다.)+(''max_connections''보다 많은 커넥션이 요청되면 ''Too many connections''이라는 오류 메시지가 나타지만 ''file descriptor''의 수가 부족해서 연결이 실패하는 경우엔 ''Too many connections'' 메시지가 나타나지 않는 것 같다. file open을 하지 못하면 ''Too many open files.'' 에러메시지가 난다고 하지만, 단순히 커넥션을 하지 못하는 메시지가 나타났다.)
  
-''open_files_limit''를 변경해보자. 우선 OS에서 열 수 있는 File descriptor 값을 확인해본다.+''open_files_limit''를 변경해보자. 우선 OS에서 열 수 있는 ''File descriptor'' 값을 확인해본다.
  
 <WRAP prewrap> <WRAP prewrap>
줄 100: 줄 100:
 </WRAP> </WRAP>
  
-soft, hard 설정값을 확인해본다.+''soft''''hard'' 설정값을 확인해본다.
  
-변경을 위해 ''/etc/security/limits.conf''을 수정한다. mysql 유저나 *(모든) 유저에 지정된 nofile 값을 변경한다.+변경을 위해 ''/etc/security/limits.conf''을 수정한다. mysql 유저나 *(모든) 유저에 지정된 ''nofile'' 값을 변경한다.
  
 <WRAP prewrap> <WRAP prewrap>
줄 113: 줄 113:
 그런 후 mysql 서비스에도 값을 변경한다. 그런 후 mysql 서비스에도 값을 변경한다.
  
-서비스 실행 명령에 옵션으로 추가해도 되지만, Mysql 문서에서는 systemd 옵션에 추가하도록 하길 권장하고 있다.+서비스 실행 명령에 옵션으로 추가해도 되지만, Mysql 문서에서는 ''systemd'' 옵션에 추가하도록 하길 권장하고 있다.
  
 추가하는 방법은 ''/lib/systemd/system/mysql.service''에 바로 추가하기 보다는 설정을 override할 수 있도록 ''/lib/systemd/system/mysql.service.d''폴더를 만들어 새로운 파일을 생성해서 추가하도록 한다. 추가하는 방법은 ''/lib/systemd/system/mysql.service''에 바로 추가하기 보다는 설정을 override할 수 있도록 ''/lib/systemd/system/mysql.service.d''폴더를 만들어 새로운 파일을 생성해서 추가하도록 한다.
  • mysql_connection_수가_214개로_고정되는_문제.1599615352.txt.gz
  • 마지막으로 수정됨: 2020/09/09 01:35
  • 저자 koov