
InnoDB File Per Table 설정을 사용하여 테이블을 분리할 때, 각 테이블이 별도의 파일에 저장되도록 하려면, MySQL 서버의 기본 설정을 변경해야 합니다.
1. MySQL 서버의 설정 파일인 my.cnf 또는 my.ini 파일을 열어, innodb_file_per_table 옵션을 추가합니다. 예를 들어, 다음과 같이 설정할 수 있습니다.
#hostingforum.kr
[mysqld]
innodb_file_per_table=1
2. MySQL 서버를 재시작하여 설정을 적용합니다.
3. InnoDB File Per Table 설정을 사용할 때, 각 테이블이 별도의 파일에 저장되므로, 테이블의 파일 이름은 테이블 이름과 일치합니다. 예를 들어, 테이블 이름이 "테이블1"인 경우, 파일 이름도 "테이블1.ibd"로 저장됩니다.
4. MySQL 서버가 재시작되더라도, 테이블 파일이 사라지지 않도록 하려면, MySQL 서버의 설정 파일에 innodb_force_recovery 옵션을 추가합니다. 예를 들어, 다음과 같이 설정할 수 있습니다.
#hostingforum.kr
[mysqld]
innodb_force_recovery=1
이 옵션을 사용하면, MySQL 서버가 재시작될 때, 테이블 파일을 복원하는 것을 방지하여, 테이블 파일이 사라지지 않습니다.
5. InnoDB File Per Table 설정을 사용할 때, 각 테이블이 별도의 파일에 저장되므로, 테이블의 크기가 큰 경우, 디스크 공간을 많이 사용할 수 있습니다. 따라서, 테이블의 크기를 관리하는 것이 중요합니다.
6. MySQL 서버의 설정 파일에 innodb_buffer_pool_size 옵션을 추가하여, 테이블의 캐시를 증가시켜, 디스크 읽기/쓰기 작업을 줄일 수 있습니다.
7. MySQL 서버의 설정 파일에 innodb_log_file_size 옵션을 추가하여, 로그 파일의 크기를 증가시켜, 로그 파일이 충분히 크면, 로그 파일이 삭제되지 않습니다.
2025-05-10 22:45