기존 데이터베이스의 "innodb_file_per_table" 파라미터를 "OFF"에서 "1"로 변경하려면 어떻게 해야 합니까?
MyISAM에서 InnoBD로 전환할 때 기본 설정을 사용했습니다.최적화 팁을 읽어본 결과, 각 테이블이 다른 파일에 있는 것이 더 낫다는 것을 알게 되었습니다.테이블 모드별로 1개의 파일에서 다른 파일로 테이블을 전송하려면 어떻게 해야 합니까?
MariaDB 10.x를 사용하는 경우innodb_file_per_table=1
는 디폴트 설정으로 되어 있기 때문에 디폴트를 사용하고 있는 한 새로운 InnoDB 테이블과 MyISAM에서 InnoDB로 변환된 테이블스페이스는 이미 분리되어 있습니다.
MariaDB 5.5를 사용하는 경우innodb_file_per_table=0
디폴트입니다.개별 테이블스페이스 사용을 시작하려면SET GLOBAL innodb_file_per_table = 1;
그 이후 서버가 재시작될 때까지 새로 생성되거나 변경된 InnoDB 테이블은 모두 이 옵션을 사용합니다.옵션을 영속적으로 설정하려면 cnf 파일에 추가합니다.
기존 InnoDB 테이블을 개별 테이블스페이스로 변환하려면ALTER TABLE <tablename> ENGINE=InnoDB
또는ALTER TABLE <tablename> FORCE
.
변환에 관한 기타 힌트: http://mysql.rjweb.org/doc.php/myisam2innodb
다음과 같이 해야 할 수 있습니다.
SET GLOBAL innodb_file_per_table = 1;
ALTER ...
저는 큰 테이블 file_per_table을 선호하지만 작은 테이블은 ibdata1에 있는 것을 선호합니다.
언급URL : https://stackoverflow.com/questions/43572049/how-can-i-change-the-innodb-file-per-table-parameter-from-off-to-1-for-an
'IT' 카테고리의 다른 글
Java Date & Time API의 문제점은 무엇입니까? (0) | 2022.11.17 |
---|---|
폼이 전송된 후 백그라운드에서 PHP 스크립트를 실행하려면 어떻게 해야 합니까? (0) | 2022.11.17 |
MySQL 트리거에서 PHP 스크립트 호출 (0) | 2022.11.17 |
원칙 2 DQL에서 now()를 사용하려면 어떻게 해야 합니까? (0) | 2022.11.17 |
DataFrame 열 유형을 문자열에서 날짜/시간으로 변환 (0) | 2022.11.17 |