mysql 5.1에서 테이블을 정기적으로 변경해야하며 주로 열을 추가해야합니다. alter table 명령으로 매우 간단합니다. 그러나 내 테이블에는 현재 최대 4 천만 행이 있으며 빠르게 커지고 있습니다. 따라서 이러한 테이블 변경 명령은 몇 시간이 걸립니다. 몇 달 안에 그들은 추측하는 데 며칠이 걸릴 것입니다.
Amazon RDS를 사용하고 있기 때문에 슬레이브 서버를 가지고 놀고 마스터로 승격시킬 수 없습니다. 따라서 다운 타임이 최소화 된 상태에서이를 수행 할 수있는 방법이 있다면 제 질문입니다. 사용자가 DB를 계속 사용할 수 있다면 몇 시간 또는 며칠이 걸리는 작업은 신경 쓰지 않습니다 ... 열을 추가하는 동안 적어도 읽을 수 있습니까? 내 앱이 쓰려고하면 어떻게 되나요? 삽입 또는 업데이트? 즉시 실패하면 실제로 그렇게 나쁘지 않고 중단되어 DB 서버에 문제가 발생하면 큰 문제가됩니다.
이것은 상당히 일반적인 스케일링 문제 여야합니다. 모든 사람이 열을 추가해야합니다. 일반적으로 프로덕션 DB에서 수행되는 작업은 무엇입니까? 슬레이브-> 마스터 마이그레이션?
업데이트 -나는 innodb 스토리지 엔진을 사용하고 있다고 언급하는 것을 잊었다.