본문 바로가기
Database/DDL

인덱스 생성, 삭제, 확인

by BAYABA 2021. 10. 10.
  1. 개인 공부 목적으로 작성한 글입니다.
  2. 아래 출처를 참고하여 작성하였습니다.

목차

  1. Intro
  2. 테이블 생성 시 인덱스 생성
  3. 인덱스 추가로 생성
  4. 기존 인덱스 삭제
  5. 인덱스 보기

1. Intro

  1. MYSQL을 기준으로 테이블에서 인덱스를 생성, 삭제, 확인하는 법에 대해 알아보겠습니다.

2. 테이블 생성 시 인덱스 생성

  1. 기본 인덱스 거는 방법
  • KEY <인덱스명> ( 칼럼명1, 칼럼명2 )
  1. 유니크 인덱스 거는 방법
  • UNIQUE KEY <인덱스명> ( 해당 칼럼명 ) --> 항상 유일해야 합니다.
//예시 

CREATE TABLE `DUMMY_DB_NAME`.`DUMMY_TABLE_NAME` (
    `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
    `DUMMY_id` bigint(20) COMMENT 'DUMMY_id, 참조하고자 하는 테이블 id',
    `DUMMY_manage_type` varchar(20) NOT NULL COMMENT 'DUMMY 관리 타입',
    `created_at` datetime NOT NULL COMMENT '생성일시',
    `updated_at` datetime default NULL COMMENT '수정일시',
    PRIMARY KEY (`id`),
    UNIQUE KEY `uk_DUMMY_id` (`DUMMY_id`),
    KEY `idx_createdat` (`created_at`),
)COMMENT='DUMMY 데이터 관리하는 방법';

3. 인덱스 추가로 생성

  1. 기존 테이블에 인덱스를 추가하는 방법입니다.
  • ALTER TABLE <테이블명> ADD INDEX <인덱스명> ( 칼럼명1, 칼럼명2, ... );
//예시 

ALTER TABLE books ADD INDEX idx_test ( writer );

4. 기존 인덱스 삭제

  1. 테이블에 등록되어 있던 인덱스를 삭제하는 방법입니다.
  • ALTER TABLE <테이블명> DROP INDEX <인덱스명>;
// 예시: 'idx_updatedat' 인덱스 삭제하는 방법

alter table ${TABLE_NAME} drop index `idx_updatedat`;

5. 인덱스 보기

  1. 해당 테이블에 적용되어 있는 인덱스를 보는 방법입니다.
  • SHOW INDEX FROM <테이블명>;
//예시 

SHOW index from ${TABLE_NAME};

출처

  1. [mysql] 인덱스 생성, 삭제, 확인

'Database > DDL' 카테고리의 다른 글

테이블 수정 관련 (ALTER)  (0) 2021.10.26
not Null <=> Null 필드 양방향 변경 방법  (0) 2021.10.10