MySQL용 Amazon Aurora의 로컬 스토리지에 무엇이 저장되며, 스토리지 용량 문제를 해결하려면 어떻게 해야 합니까?

Aurora 클러스터의 인스턴스에는 두 가지 유형의 스토리지가 있습니다.

  • 영구 데이터 스토리지(클러스터 볼륨이라고 함). 이 스토리지 유형은 더 많은 공간이 필요할 때 자동으로 증가합니다. 자세한 내용은 클러스터 볼륨에 포함된 항목을 참조하십시오.
  • 인스턴스 클래스를 기반으로 한 클러스터의 각 Aurora 인스턴스에 대한 로컬 스토리지. 이 스토리지 유형 및 크기는 인스턴스 클래스에 의해 결정되며, 더 큰 DB 인스턴스 클래스로 이동해야만 변경될 수 있습니다. MySQL용 Aurora는 오류 로그, 일반 로그, 느린 쿼리 로그, 감사 로그 및 InnoDB가 아닌 임시 테이블을 저장하기 위해 로컬 스토리지를 사용합니다.

무료 스토리지 용량 부족 오류

무료 스토리지 한도에 도달하면 다음과 같은 오류가 나타날 수 있습니다.

"The free storage capacity for DB Instance: instance-name is low at x% of the provisioned storage [Provisioned Storage: xx GB, Free Storage: xx GB]. You may want to increase the provisioned storage to address this issue."

로컬 스토리지는 임시 테이블 및 로그 파일과 같은 비 영구 데이터가 로컬 스토리지에 저장될 때 용량 한계에 도달할 수 있습니다. ALTER TABLE 명령이 실행 중이거나 과도한 임시 테이블을 저장하고 있는지 확인하십시오. ALTER 명령 및 임시 테이블을 최적화하여 로컬 스토리지 사용량을 줄일 수 있습니다. 다음과 비슷한 명령을 여러 번 실행하여 인스턴스에서 임시 테이블 수를 확인할 수 있습니다.

SHOW GLOBAL STATUS LIKE 'created_tmp%tables';

특정 시간 범위 동안 생성된 임시 테이블 수를 모니터링하려면 GoSH를 활성화할 수 있습니다. 이를 통해 향후 분석을 위해 나중에 검토할 수 있는 테이블에 서버 상태 변수를 저장할 수 있습니다.

사용 가능한 메모리의 양을 결정하려면 FreeableMemory에 대한 Amazon CloudWatch 지표를 검토하십시오. 그런 다음, 해당 공간이 감사 로그, 일반 로그 또는 느린 쿼리 로그에 의해 사용되는지 확인합니다. FreeLocalStorage에 대한 CloudWatch 지표를 사용하여 Aurora 인스턴스와 관련된 로컬 스토리지 공간을 모니터링할 수 있습니다. 자세한 내용은 Amazon Aurora DB 클러스터 지표 모니터링을 참조하십시오.

저장 공간이 더 필요하면 로컬 스토리지 양을 늘릴 수 있습니다. 로컬 스토리지를 늘리려면 DB 인스턴스 클래스를 늘려야 합니다. 자세한 내용은 DB 인스턴스 클래스 변경을 참조하십시오.

max_heap_table_sizetmp_table_size 파라미터의 값을 늘릴 수도 있습니다. 이러한 파라미터를 수정하면 디스크로 유출되는 데이터 양이 줄어들어 사용되는 로컬 스토리지의 양을 줄일 수 있습니다. 인스턴스에 첨부된 파라미터 그룹에서 이 파라미터를 수정할 수 있습니다. 자세한 내용은 DB 파라미터 그룹의 파라미터 수정을 참조하십시오.

참고: max_heap_table_sizetmp_table_size의 값을 늘리면 테이블은 인스턴스에서 더 많은 메모리를 소비합니다. 이 값을 늘릴 경우, 인스턴스에 사용 가능한 메모리가 충분한지 확인하십시오. FreeableMemory에 대한 CloudWatch 지표를 사용하여 사용 가능한 메모리를 모니터링할 수 있습니다. 자세한 내용은 지표를 통해 성능 문제 식별을 참조하십시오.

ERROR 1114 table full

MySQL이 ALTER TABLE과 같은 연산을 수행하면 새로운 스키마를 통해 중간 임시 테이블이 생성됩니다. 그런 다음, MySQL은 이전 테이블을 삭제하기 전에 중간 테이블에 데이터를 로드합니다. 중간 테이블은 로컬 스토리지를 사용할 수 있습니다. 중간 테이블에 가용한 양보다 더 많은 스토리지가 필요한 경우 다음과 같은 오류가 발생할 수 있습니다.

"ERROR 1114 (HY000): The table 'table-name' is full"

이 오류를 해결하려면 인스턴스를 일시적으로 확장하여 로컬 스토리지를 늘릴 수 있습니다. ALTER TABLE 작업이 완료되면 인스턴스 클래스의 크기를 줄일 수 있습니다. 로컬 스토리지를 늘리려면 Aurora 인스턴스 클래스를 늘려야 합니다. 자세한 내용은 DB 인스턴스 클래스 변경을 참조하십시오.


페이지 내용이 도움이 되었습니까? | 아니요

AWS 지원 지식 센터로 돌아가기

도움이 필요하십니까? AWS 지원 센터를 방문하십시오.

게시 날짜: 2019년 2월 26일