Skip to content
컴퓨터잡담
2010.04.27 09:47

Table_open_cache 가 늘어나지 않는 이유.

조회 수 15544 추천 수 0 댓글 1
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

Table_open_cache 가 늘어나지 않는 이유.


table_locks_wait 테이블_락 현상이 지속적으로 발생되어 Table_open_cache 의 수를 늘려보았지만 지정한 숫자가 아닌 임의대로 지정이 되었다.


Table_open_cache 가 max_connections 과 관련이 있다고 하여 늘이고 줄여보니 max_connections 의 숫자에 따라 Table_open_cache 가 늘어났다 줄어들었다 하는 것을 알 수 있었다.


문제는 


max_connections 의 값이 낮을수록 Table_open_cache 값이 늘어나고,

max_connections 의 값이 높을수록 Table_open_cache 값이 줄어드는 기현상이 벌어졌다.


이유가 뭘까?


해당 링크에서 답이 보이기 시작했다.


http://www.mysqlkorea.co.kr/sub.html?mcode=manual&scode=01_1&m_no=22536&cat1=827&cat2=965&cat3=1002&lang=k


일부내용을 발취하자면,



table_open_cache는 max_connections과 관련이 있다. 

예를 들면, 200개의 동시 구동 접속의 경우, 테이블 캐시의 크기는 최소 200 × N로 만들 수가 있는데, 여기에서N 은 여러분이 실행하는 쿼리 안에 있는 조인 (join) 당 테이블의 최대 숫자가 된다. 

여러분은 또한 반드시 임시 테이블 및 임시 파일에 대한 여분의 파일 디스크립터를 보관하고 있어야 한다. 여러분은 지금 사용하고 있는 OS가 table_open_cache 설정에 포함되어 있는 오픈 파일 디스크립터의 숫자를 다룰 수 있는지를 확인해야 한다. 만일 table_open_cache가 너무 크다면, MySQL은 파일 디스크립터 오류를  발생 시킨 후에 쿼리를 실행하지 못하며, 또한 매우 불안정하게 된다. 또한,  MyISAM 스토리지 엔진은 서로 다른 오픈 테이블별로 두 개의 파일 디스크립터를 필요로 한다는 점을 알고 있어야 한다. mysqld의 스타트 업 옵션인 --open-files-limit를 사용하면 MySQL에서 사용 가능한 파일 디스크립터의 숫자를 늘릴 수가 있다.


파일 오픈용 캐시는 table_open_cache 엔트리 레벨에서 관리된다. 디폴트 값은 64이다; 이 값은 --table_cache 옵션으로 변경 시킬 수가 있다. MySQL은 쿼리를 실행하기 위한 것 보다 많은 수의 테이블을 임시로 오픈 한다는 점을 알아두자.

 



파일 디스크립터?

mysqld의 스타트 업 옵션인 --open-files-limit를 사용하면 MySQL에서 사용 가능한 파일 디스크립터의 숫자를 늘릴 수가 있다?

뭐지? 



참고로 나의 서버에는 open-files-limit가 2048로 되어 있다.



MySQL은 아래의 환경이 되면 사용되지 않은 테이블을 닫고 캐시에서 삭제해 버린다:

캐시가 가득 차고 쓰레드가 캐시 안에 없는 테이블을 열고자 시도할 경우.

캐시가 table_open_cache 엔트리에 있는 것 보다 많은 것을 가지고 있고 캐시 안에 있는 테이블이 더 이상 어떠한 쓰레드에 의해서도 사용되지 않을 경우.

테이블 플러싱 연산이 발생될 경우. 이것은 누군가가 FLUSH TABLES 명령문을 입력하거나,  mysqladmin flush-tables 또는 mysqladmin refresh 명령어를 실행할 때.

테이블 캐시가 가득 차게 되면, 서버는 사용할 캐시 엔트리를 저장하기 위해서 아래의 과정을 진행한다:


사용 중에 있지 않는 테이블은 풀어 놓는다.

만일 오픈해야 할 테이블이 필요하기는 하지만 캐시가 가득 찾기 때문에 풀어 놓을 테이블이 없게 된다면, 캐시는 필요한 만큼 임시로 확장이 된다.

캐시가 임시로 확장이 되고 테이블이 사용되지 않는 상태가 되면, 테이블은 닫히고 캐시에서 풀어져 나오게 된다. 




흠,,

하단까지 읽어보았으나, 내서버는 Opend_tables 가 0이다.

아직 내서버에 나타나는 증상은 해결할 수 없다. ㅠ.ㅠ

로그인 후 댓글쓰기가 가능합니다.

?

List of Articles
번호 분류 제목 날짜 조회 수
677 컴퓨터잡담 AVR 강좌 3 2012.07.07 4859
676 WindowsTip ISO 파일을 USB로 굽기(USB 윈도우 설치 디스크 만들기) file 2015.01.09 4885
675 [Docs]스프레드시트 스프레드시트 스크립트 소스 2020.12.26 4892
674 컴퓨터잡담 윈도우7 노트북에서 인터넷 끊킴현상 발생시 조치. 4 2011.06.20 4894
673 컴퓨터잡담 파이썬 엑셀 다루기 - openpyxl 사용법 2021.07.19 4906
672 WindowsTip 윈도우 ip helper ipv6 도데체 무엇인가? 2015.05.11 4916
671 자바(JAVA) 자바(java) 설치하기 file 2015.02.13 4934
670 컴퓨터잡담 XE) blogapi 기능 특이증상 해결방법 2012.11.21 4935
669 컴퓨터잡담 윈도우 초기화하기 file 2012.05.09 4950
668 컴퓨터잡담 XE 모바일에서 글쓰기 안되는 증상 해결방법 file 2012.11.10 4951
667 컴퓨터잡담 윈도우 XP에서 메모리를 시스템 캐시로 설정하는 방법 file 2012.03.08 4952
666 Server 웹서버에서의 램디스크 엄청난 효과 비교하기 file 2016.11.27 4953
665 컴퓨터잡담 카카오톡 PC버전 설치하기 2012.04.14 4957
664 Excel 엑셀 여러가지 기능 2014.11.10 5011
663 Server XpressEngine 최적화 기진곰님의 슈퍼캐시 테스트 file 2016.09.19 5016
662 컴퓨터잡담 공유기가 자꾸 다운되는 현상에 대한 여러가지 해결방법 2 2012.11.05 5038
661 컴퓨터잡담 float 문제, Image 밑으로 본문을 새로 줄바꿈해서 출력하려면. file 2010.12.08 5044
660 파이썬 파이썬 pyautogui 화면에 여러개의 동일한 이미지가 있을 때 n번째 이미지 선택하기 2023.02.12 5044
659 컴퓨터잡담 내컴퓨터 마우스 오른쪽 메뉴에서 명령어 추가하기 1 2011.12.18 5063
658 컴퓨터잡담 파이썬 최대값 두번째 큰값 세번째 큰값 구하기 2021.07.27 5082
Board Pagination Prev 1 ... 11 12 13 14 15 ... 46 Next
/ 46

http://urin79.com

우린친구블로그

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소