13.7.5.37 SHOW TABLE STATUS 구문
SHOW TABLE STATUS [{FROM | IN} db_name]
[LIKE 'pattern' | WHERE expr] SHOW TABLE STATUS 는 SHOW TABLES 처럼 작동하지만, TEMPORARY 이외의 각 테이블에 관한 많은 정보를 제공합니다. 이 목록은 또한 mysqlshow --status db_name 명령을 사용하여 얻을 수 있습니다. LIKE 절 (있는 경우)은 어떤 테이블 이름과 일치 여부를 나타냅니다. 섹션 21.32 "SHOW 명령문의 확장" 에서 설명 된 바와 같이 WHERE 절을 지정하면 더 일반적인 조건을 사용하여 행을 선택할 수 있습니다.
이 문은 또한 뷰에 대한 정보도 표시합니다.
SHOW TABLE STATUS 의 출력에는 다음 열이 있습니다.
Name테이블의 이름.
Engine이 테이블의 스토리지 엔진. 제 15 장 "대체 스토리지 엔진" 을 참조하십시오.
Version이 테이블의
.frm파일의 버전 번호.Row_format행 스토리지 포맷 (
Fixed,Dynamic,Compressed,Redundant,Compact).MyISAM테이블의 경우Dynamic는 myisamchk -dvv이Packed로보고하는 것에 해당합니다.InnoDB테이블의 형식은Redundant또는Compact로보고됩니다.InnoDB Plugin의Barracuda파일 형식의 경우이 포맷은Compressed또는Dynamic일 가능성이 있습니다.Rows행수.
MyISAM등 일부 스토리지 엔진은 정확한 숫자를 저장합니다.InnoDB와 같은 다른 스토리지 엔진의 경우,이 값은 근사치이며 실제 값에서 40 ~ 50 % 변동 할 가능성이 있습니다. 이러한 경우 정확한 숫자를 얻으려면SELECT COUNT(*)를 사용합니다.INFORMATION_SCHEMA데이터베이스 테이블의 경우Rows값은NULL입니다.Avg_row_length평균 유키나가.
Data_length데이터 파일의 길이.
Max_data_length데이터 파일의 최대 길이. 이것은이 테이블에 저장할 수있는 데이터의 총 바이트 수 (사용되는 데이터 포인터 크기가 지정된 경우).
Index_length인덱스 파일의 길이.
Data_free할당하고 있지만, 사용되지 않은 바이트 수.
이 정보는 또한
InnoDB테이블에 대해서도 표시됩니다 (이전에는Comment값에 포함되어있었습니다).InnoDB테이블은 테이블이 속한 테이블 스페이스의 공간을보고합니다. 공유 테이블 스페이스에있는 테이블의 경우, 이것은 공유 테이블 스페이스의 공간입니다. 여러 테이블 공간을 사용하고이 테이블에 고유 테이블 공간이있는 경우 해당 테이블 만의 공간입니다. 공간은 전체 여유 익스텐트에서 안전 마진을 깎은 바이트 수를 나타냅니다. 공간이 0으로 표시되는 경우에도 새로운 익스텐트를 할당 할 필요가없는 한 행을 삽입 할 수 있습니다.파티션 된 테이블의 경우이 값은 추정치에 불과해 절대적으로 옳은 것은 없습니다. 이러한 경우,이 정보를 취득하기위한보다 정확한 방법은 다음 예제와 같이
INFORMATION_SCHEMA.PARTITIONS테이블에 쿼리입니다.SELECT SUM (DATA_FREE) FROM INFORMATION_SCHEMA.PARTITIONS WHERE TABLE_SCHEMA = 'mydb' AND TABLE_NAME = 'mytable';
자세한 내용은 섹션 21.13 "INFORMATION_SCHEMA PARTITIONS 테이블" 을 참조하십시오.
Auto_increment다음의
AUTO_INCREMENT값.Create_time언제 테이블이 작성 되었는가?
Update_time언제 데이터 파일이 마지막으로 업데이트 된 것인가? 일부 스토리지 엔진에서는이 값은
NULL입니다. 예를 들어,InnoDB는 그 시스템 테이블 공간 에 여러 테이블을 저장하는 데이터 파일의 타임 스탬프는 적용되지 않습니다. 각InnoDB테이블이 개별.ibd파일 내에 존재하는 file-per-table 모드의 경우에도 변경 버퍼링 이 데이터 파일에 쓰기가 지연 될 가능성이 있기 때문에 파일의 변경 시간은 마지막 삽입 업데이트 또는 삭제 시간은 다릅니다.MyISAM의 경우는 데이터 파일의 타임 스탬프가 사용됩니다. 하지만 Windows에서는 타임 스탬프가 업데이트가 업데이트되지 않기 때문에이 값은 정확하지 않습니다.Check_time언제 테이블이 마지막으로 확인 된 것인가? 모든 스토리지 엔진이이 시간을 갱신하는 것은 아닙니다. 그 경우,이 값은 항상
NULL입니다.Collation이 테이블의 캐릭터 셋과 콜레 션.
Checksum라이브 체크섬 값 (존재하는 경우).
Create_optionsCREATE TABLE에서 사용되는 추가 옵션.CREATE TABLE이 호출 될 때 지정되는 원래의 옵션은 유지되고 있으며, 여기에서보고되는 옵션은 활성 테이블 설정 및 옵션과 다를 수 있습니다.Comment이 테이블을 만들 때 사용 된 코멘트 (또는 MySQL이 테이블 정보에 액세스 할 수 없었던 이유에 대한 정보).
MEMORY 테이블의 경우 Data_length , Max_data_length 및 Index_length 값은 거의 할당 된 메모리의 실제 양을 나타냅니다. 할당 알고리즘은 할당 작업의 수를 줄이기 위해 많은 양의 메모리를 확보합니다.
NDB 테이블의 경우이 문 출력 Avg_row_length 및 Data_length 열의 적절한 값을 나타내지 만 예외로 BLOB 컬럼은 고려되지 않습니다.
뷰의 경우 Name 이 뷰 이름을 나타내고, Comment 가 view 되는 점을 제외하고 SHOW TABLE STATUS 에 표시되는 모든 필드가 NULL 입니다.