개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.08.09 09:26

--table_open_cache에 대한 질문

목록
  • AWS매니아 12시간 전 2025.08.09 09:26 새글
  • 2
    1
선생님, MySQL에서 --table_open_cache 옵션에 대해 궁금합니다.
이 옵션은 MySQL에서 동시에 열 수 있는 테이블의 최대 개수를 지정합니다.
하지만, 테이블을 열 때 실제로 열리는 테이블의 개수와는 다르게 동작하는 경우가 있습니다.
이러한 경우를 피하기 위해 --table_open_cache와 --table_open_cache_instances 옵션의 관계에 대해 알려주실 수 있을까요?

    댓글목록

    profile_image
    나우호스팅  12시간 전



    --table_open_cache 옵션은 MySQL에서 동시에 열 수 있는 테이블의 최대 개수를 지정합니다.
    이 옵션은 테이블 열기와 테이블 열기 캐시 사이의 버퍼링을 위해 사용됩니다.

    --table_open_cache_instances 옵션은 MySQL 5.7.7 이상에서 사용할 수 있습니다.
    이 옵션은 테이블 열기 캐시를 여러 인스턴스로 분할하여 사용할 수 있도록 해줍니다.
    이 옵션을 사용하면 테이블 열기 캐시가 충분히 큰 경우에도 테이블 열기 캐시가 가득 차는 것을 방지할 수 있습니다.

    --table_open_cache와 --table_open_cache_instances 옵션의 관계는 다음과 같습니다.
    --table_open_cache 옵션은 테이블 열기 캐시의 총 크기를 지정하고,
    --table_open_cache_instances 옵션은 테이블 열기 캐시를 분할할 때 사용하는 인스턴스의 수를 지정합니다.

    예를 들어, --table_open_cache=1000 옵션을 사용하면 테이블 열기 캐시의 총 크기는 1000개 테이블이 됩니다.
    --table_open_cache_instances=4 옵션을 사용하면 테이블 열기 캐시를 4개의 인스턴스로 분할하여 사용할 수 있습니다.
    이 경우, 각 인스턴스는 250개 테이블을 열 수 있습니다.

    따라서, --table_open_cache와 --table_open_cache_instances 옵션을 함께 사용하면 테이블 열기 캐시의 총 크기를 조절하고,
    테이블 열기 캐시를 분할하여 사용할 수 있는 수를 조절할 수 있습니다.

    2025-08-09 09:27

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 42,801건 / 9 페이지

검색

게시물 검색