답변:
시작하기 전에 고려해야 할 몇 가지 구성 옵션이 있습니다.
myisam을 전혀 사용하지 않는 한 거의 모든 max_connections
메모리를 안전하게 할당 할 수 있습니다 (OS를 편안하게 실행할 수 있도록 충분히 유지하고 메모리에 충분한 용량을 유지) innodb_buffer_pool
. InnoDB의 좋은 점은 거의 모든 메모리를 자체적으로 처리하며 쿼리 캐시, 키 버퍼 등과 같은 것을 분리 할 필요가 없다는 것입니다.
innodb_file_per_table
파일 시스템을 탐색하고 다른 테이블과 데이터베이스에 필요한 공간을 확인하는 것이 훨씬 쉬워지기 때문에 간단히 활성화하는 것이 좋습니다 . 여전히 InnoDB 내부 용으로 일반 ibdata 파일이 필요하지만으로 정의하면됩니다 10M:autoextend
. 미리 할당 된 크기를 가진 많은 다른 innodb 데이터 파일을 정의 할 필요가 없습니다.
innodb_log_file_size
그리고 innodb_log_buffer_size
당신은 큰 사람의 많은 경우 더 큰보다 10 배 당신의 가장 큰 Blob 오브젝트를해야합니다 결합. 당신이하지 않으면 (그리고 당신은 [ 1 , 2 ] 해서는 안됩니다 ), 실제로 그것을 많이 신경 쓸 필요가 없습니다. 계산 방법에 대한 자세한 보고서는 MySQL 성능 블로그 를 확인하십시오 .
MySQL을 잠시 동안 실행 한 경우 MySQLTuner 또는 MySQL Tuning Primer로 설정을 확인하십시오 .
보다 자세한 보고서를 보려면 mysqlreport를 시도 하고 실시간 모니터링을하려면 mytop을 확인하십시오 .
나에게 "놀라운"한 가지는 innodb가 기본적으로 모든 데이터베이스 / 테이블에 하나의 파일을 사용한다는 것입니다. 데이터베이스 당 디렉토리와 테이블 / 테이블 인덱스 당 파일을 사용하는 MyISAM 테이블과 반대로.
실제 파일을 테이블 단위로 축소하는 데 사용되는 경우 중요 할 수 있습니다 (테이블 xxx 최적화).