MySQL 테이블 생성 시 스토리지 엔진 지정하기
MySQL에서 테이블을 생성할 때는 별도의 설정이 없으면 기본 스토리지 엔진인 InnoDB가 자동으로 적용됩니다. 하지만 특정 테이블에 다른 스토리지 엔진을 사용하고 싶다면, CREATE TABLE 문 마지막에 ENGINE 키워드를 추가하여 원하는 엔진을 직접 지정할 수 있습니다.
사용 예제
mysql> CREATE TABLE Student(id INTEGER PRIMARY KEY, Name VARCHAR(15))
-> ENGINE = 'MyISAM';
Query OK, 0 rows affected (0.28 sec)
위 예제에서 ENGINE 키워드는 해당 테이블(Student)에 사용될 스토리지 엔진을 지정하는 역할을 합니다. 이처럼 ENGINE 절을 명시하면 서버의 기본 설정과 무관하게 MyISAM 엔진이 적용된 테이블이 생성됩니다.
스토리지 엔진 선택 시 참고 사항
MySQL 5.5 버전부터 InnoDB가 기본 스토리지 엔진으로 채택되었습니다. InnoDB는 트랜잭션 처리(ACID)와 외래 키 제약 조건을 지원하여 데이터 무결성이 중요한 환경에 적합합니다. 반면 MyISAM은 구조가 단순하고 읽기 성능이 빠른 것이 특징이지만, 트랜잭션을 지원하지 않습니다. 따라서 테이블의 용도에 맞게 적절한 스토리지 엔진을 선택하는 것이 중요합니다.
기존 테이블의 엔진 변경
이미 생성된 테이블의 스토리지 엔진을 변경해야 한다면 ALTER TABLE 문을 활용할 수 있습니다.
mysql> ALTER TABLE Student ENGINE = InnoDB;