나는 일반적으로 큰 AWS 팬이지만 RDS는별로 없습니다.
@RolandoMySQLDBA는 그것에 대해 꽤 좋은 점이 지적했다.
EC2의 MySQL과 비교하여 RDS에서 볼 수있는 유일한 장점은 포인트 앤 클릭 스냅 샷, 클론 및 특정 시점 복구 기능을 수행 할 수 있다는 점이지만 제어 및 유연성 상실을 보완하기에는 충분하지 않으며 가장 높은 가격을 정당화하지는 않습니다. RDS는 어떤면에서는 섹시하지만 모든 움직이는 부분에 도달 할 수 없기 때문에 궁극적으로 고칠 수없는 것을 신뢰할 수는 없습니다.
나는 SUPER
특권이 없는 것을 좋아하지 않습니다 . 오류 로그를 표시하지 못하는 것을 좋아하지 않습니다. 데이터베이스 서버에서 "top"또는 "iostat"를 실행하여 코어와 드라이브가 어떻게로드를 즐기는 지 확인하는 것을 좋아하지 않습니다. 페더레이션 스토리지 엔진에 액세스하는 것을 좋아하지 않습니다. 읽기 전용 복제본으로 활용할 수없는 핫 스텐 바이 (다중 AZ) 백업 마스터 머신에 대한 비용을 지불하는 것을 좋아하지 않습니다. 물론, MySQL을 RDBMS-in-a-box로 성공적으로 패키징하고 판매하기 위해 이러한 제약 조건을 모두 갖추어야하는 이유는 완벽하게 합리적입니다. 유일한 것은, RDBMS-in-a-box는 내가 가지고 있지 않은 일련의 문제를 "해결"하고 새로운 방식으로 문제를 일으킨다는 것입니다.
그러나 RDS를 사용하는 데있어 절대적인 문제는 바이너리 로그 및 복제에 대한 액세스가 완전히 없다는 것입니다. Binlogs, 특히 행 기반은 사소한 재난에 대한 환상적인 복구 도구이지만 액세스 할 수없는 경우 도움이되지 않습니다. 사무실의 사내 서버를 RDS에서 프로덕션 데이터베이스의 읽기 전용 복제본으로 구성하고 싶습니까? RDS에있는 데이터에 대해 생각할 수없는 일이 발생하면 로컬 백업을 수행하고보고하고 재해 복구를 위해 준비해야하는 것이 있습니까? 그것은 동시에 명백하고 화려한 아이디어입니다.
죄송합니다. 복제에 직접 액세스 할 수 없습니다. 물론, 읽기 전용 복제본에 대해서만 비용을 지불 할 수 있지만 다른 RDS 인스턴스로만 가능합니다. 내 책에 가치 제안이 아닙니다.
업데이트 : MySQL 5.6에 대한 RDS의 한 가지 중요한 변경
난 아직도, 여러 가지 이유로 RDS를 실행에 대한 지원의 부족을 포함하여 반대 (심지어 EC2에서) 내 자신의 서버를 실행 선호하는 사용자 정의 함수 는 사용할 수 없다는 연합 저장소 엔진을 , 그리고 무능력은이하는 일을 비상 접속에는 추가 연결이 가능하지만 ...
Amazon은 RDS 용 MySQL 5.6을 크게 변경하여 주요 이의 제기 중 하나를 제거했습니다. 아마도 가장 큰 이의 제기 : 이제 이진 로그에 액세스 할 수 있으며 비 RDS 인스턴스를 슬레이브로 실행하거나 다른 유틸리티를 binlog 스트림을 읽는 서버.
http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/MySQL.Procedural.Exporting.NonRDSRepl.html
공식적으로 문서에는 실시간 마이그레이션을 목적으로 슬레이브를 설정할 수 있도록 노출되어 있음을 나타냅니다.을 사용하여 기존 RDS 인스턴스에서 외국 미래 마스터 서버를 동기화 mysqldump
한 다음 슬레이브로 RDS에 연결 응용 프로그램이 새 마스터로 마이그레이션 될 때까지 복제 스트림을 통해 업데이트를 실시간으로 제공 받지만 비공식적으로는 지원하지 않을 것으로 예상되는 한 지속적으로 업데이트 할 수 있습니다. 나에게 합리적인 것 같습니다.
이것은 최근 웹 세미나 에서 약 56:45에 시작되는 대화에서 확인 되었습니다 .
"복제 된 상태로 무기한으로 유지할 수 있습니다 ...
"... 복제를 유지할 책임이있는 한 ..."
"원하는 바에 따라 진행중인 복제를 수행 할 수 있습니다."
이 새로운 기능은 공개 웹 사이트 백업 MySQL 인스턴스에서 RDS를 사용하는 것에 대한 이의 제기를 거부하기에 충분했습니다 FEDERATED
.
따라서 나는 여전히 그것을 선호하지 않지만 더 이상 반대하지 않습니다. 바이너리 로그의 실시간 스트림을 통해 실시간으로 데이터를 제어하고 트랜잭션이 없도록 보장 할 책임이 있기 때문에 더 이상 반대하지 않습니다. 나는 DBA로서 통제권을 다시 얻었 기 때문에 재난이 발생했을 때 재난이 발생했습니다. 블랙 박스 내부의 블랙홀에서 사라진 데이터를 제 3 자 공급 업체가 손가락으로 가리 키거나 소송을 제기하거나 그 밖의 것에 대해 소송을 제기하더라도 손실 된 데이터는 다시받지 않습니다.
경영진은 RDS의 "아이디어"를 좋아하고 비용 차이에 반대하지 않기 때문에 RDS가 포함 된 모든 새로운 웹 사이트를 시작합니다.
인정한 시점 및 클릭 시점 복구는 RDS의 훌륭한 기능입니다. 기존 시스템을 변경하거나 중단시키지 않고 대신 기존 백업을 사용하여 완전히 새로운 인스턴스를 생성합니다. 선택한 특정 시점에 가장 근접한 다음 필요한 binlog를 적용하여 새 시스템을 지정한 특정 시점으로 가져옵니다.
이와 관련하여, 그러나 다른 방향으로, 이제는 비슷한 전략을 사용하여 라이브 MySQL 데이터베이스를 RDS로 마이그레이션 할 수도 있습니다. RDS 마스터를 연결할 수 있습니다. RDS 인스턴스가 마이그레이션 할 때 데이터의 라이브 버전을 갖도록 기존 시스템의 슬레이브로 사용됩니다. 5.6에서만 작동하는 외부 복제를위한 RDS binlog에 대한 액세스와 달리 내부 복제는 5.5.33 및 5.6.13부터 RDS에서 지원됩니다 .