MariaDB-인덱스 및 통계 테이블
인덱스는 레코드 검색을 가속화하기위한 도구입니다. 인덱스는 인덱싱 된 열 내의 각 값에 대한 항목을 생성합니다.
네 가지 유형의 인덱스가 있습니다-
Primary (하나의 레코드는 모든 레코드를 나타냄)
Unique (하나의 레코드는 여러 레코드를 나타냄)
Plain
Full-Text (텍스트 검색에서 많은 옵션을 허용합니다).
"키"와 "인덱스"라는 용어는이 사용법에서 동일합니다.
인덱스는 하나 이상의 열과 연결되며 빠른 검색과 효율적인 레코드 구성을 지원합니다. 인덱스를 생성 할 때 쿼리에서 자주 사용되는 열을 고려하십시오. 그런 다음 하나 이상의 인덱스를 만듭니다. 또한 인덱스를 기본적으로 기본 키 테이블로 봅니다.
인덱스는 검색 또는 SELECT 문을 가속화하지만 테이블과 인덱스 모두에서 작업을 수행하기 때문에 삽입 및 업데이트를 끌어옵니다.
인덱스 생성
CREATE TABLE ... INDEX 문 또는 CREATE INDEX 문을 통해 인덱스를 만들 수 있습니다. 가독성, 유지 관리 및 모범 사례를 지원하는 최상의 옵션은 CREATE INDEX입니다.
아래에 주어진 Index의 일반적인 구문을 검토하십시오-
CREATE [UNIQUE or FULLTEXT or...] INDEX index_name ON table_name column;
사용 예 검토-
CREATE UNIQUE INDEX top_sellers ON products_tbl product;
인덱스 삭제
DROP INDEX 또는 ALTER TABLE ... DROP을 사용하여 인덱스를 삭제할 수 있습니다. 가독성, 유지 관리 및 모범 사례를 지원하는 최상의 옵션은 DROP INDEX입니다.
아래 주어진 Drop Index의 일반 구문을 검토하십시오.
DROP INDEX index_name ON table_name;
사용 예 검토-
DROP INDEX top_sellers ON product_tbl;
색인 이름 바꾸기
ALTER TABLE 문으로 인덱스 이름을 바꿉니다. 아래에 주어진 일반적인 구문을 검토하십시오-
ALTER TABLE table_name DROP INDEX index_name, ADD INDEX new_index_name;
사용 예 검토-
ALTER TABLE products_tbl DROP INDEX top_sellers, ADD INDEX top_2016sellers;
인덱스 관리
모든 인덱스를 검사하고 추적해야합니다. SHOW INDEX를 사용하여 주어진 테이블과 관련된 모든 기존 인덱스를 나열합니다. 세로 형식을 지정하는 "\ G"와 같은 옵션을 사용하여 표시되는 콘텐츠의 형식을 설정할 수 있습니다.
다음 예를 검토하십시오-
mysql > SHOW INDEX FROM products_tbl\G
테이블 통계
인덱스는 레코드에 대한 더 빠른 액세스와 제공된 통계를 고려하여 쿼리를 최적화하는 데 많이 사용됩니다. 그러나 많은 사용자는 인덱스 유지 관리가 번거 롭다고 생각합니다. MariaDB 10.0은 모든 스토리지 엔진의 모든 테이블에 대한 데이터 통계를 계산하고 인덱싱되지 않은 열에 대한 통계까지 계산하는 스토리지 엔진 독립적 인 통계 테이블을 제공했습니다.