새로운 열과 인덱스를 추가 할 큰 테이블 (> 1,000 만 행)이 있습니다.my.cnf : 큰 MySQL 테이블에서 새로운 열과 인덱스를 추가하는 속도가 향상되었습니다.
이 작업을 완료하는 데 점차 길어지고 있습니다.
저는 16GB 메모리를 사용할 수있는 강력한 서버를 보유하고 있습니다.
이 프로세스의 속도를 높이려면 my.cnf에서 가장 좋은 설정은 무엇입니까?
새로운 열과 인덱스를 추가 할 큰 테이블 (> 1,000 만 행)이 있습니다.my.cnf : 큰 MySQL 테이블에서 새로운 열과 인덱스를 추가하는 속도가 향상되었습니다.
이 작업을 완료하는 데 점차 길어지고 있습니다.
저는 16GB 메모리를 사용할 수있는 강력한 서버를 보유하고 있습니다.
이 프로세스의 속도를 높이려면 my.cnf에서 가장 좋은 설정은 무엇입니까?
maatkit의 튜닝 - 프라이머를 사용하십시오. 통계를보고 변경해야하는 설정에 대한 권장 사항을 제공합니다.
결론은 스키마 나 색인을 변경해서는 안된다는 것입니다. 당신이주의했듯이, 그 방법은 당신이 점점 더 커질수록 지속되지 않을 것입니다. 어쩌면 디자인을 다시 볼 수도 있습니다.
더 많은 하드웨어를 던질 수도 있습니다. 디스크가 많은 디스크 배열이 필요한 것 같습니다.
Innodb 엔진을 사용하는 경우 my.cnf에서 innodb_buffer_pool_size = 12000M을 설정하십시오. 이렇게하면 12G를 MySQL에 할당하여 데이터를 캐싱 할 수 있습니다. 당신의 머신이 MySQL 전용 인 경우, 14G까지 올라갈 수 있습니다.
큰 테이블에서는 SSD 기반 RAID 인 partitiong을 사용해야합니다. 및 사용
innodb_flush_method=O_DIRECT
디스크 하위 시스템의 성능을 향상시켜야합니다. DB 속도보다 iops가 많습니다.