У меня есть главный экземпляр MySQL, работающий в нашей локальной сети, но мне было интересно, могу ли я получить экземпляр EC2 RDS для репликации мастера, или это заблокировано Amazon?
Судя по всему, сейчас это возможно, однако не полностью «поддерживается». Amazon теперь позволяет реплицировать RDS на внешнее ведомое устройство и реплицировать на RDS с внешнего ведущего устройства, однако их отказ от ответственности предполагает, что они не намерены делать это постоянной частью настройки вашего сервера.
Я лично не тестировал это, но я планирую использовать его для миграции с некоторых старых серверов, отличных от AWS, на которых я размещаю различные базы данных и приложения.
Учитывая ваш вопрос, лучше всего подходит приведенный ниже документ AWS.
Репликация в RDS с внешнего Мастера: http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/MySQL.Procedural.Importing.NonRDSRepl.html
Доказательство концепции в сообщении блога Зёнке Рюмплера (RDS to External Slave): http://www.ruempler.eu/2013/07/07/replicating-aws-rds-mysql-databases-to-external-slaves/
По состоянию на февраль 2011 года это все еще не поддерживается, см. Экземпляр RDS в качестве подчиненного устройства репликации:
Репликация без RDS на RDS в настоящее время не поддерживается [...]. Тем не менее, мы зарегистрируем ваш интерес для нашего будущего планирования дорожной карты.
Теперь это официально поддерживается. В дополнение к ссылке Джона Си (http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/MySQL.Procedural.Importing.NonRDSRepl.html), AWS также подготовила (длинную) веб-трансляцию об этом: http://youtu.be/TT1M_XRAlQo
Я не буду полностью воспроизводить документацию AWS, но сокращенные шаги:
mysql -u[RDS username] -h'[RDS IP address]' -p'[password]' < ~/dump.sql
mysql> CALL mysql.rds_set_external_master ('[external master ip]', 3306, '[replicant username form step 5]', '[replicant password]' , '[MASTER_LOG_FILE value from step 7, e.g., mysql-bin.000042]', [MASTER_LOG_POS value from step 7 e.g., 107] , 1);
mysql> call mysql.rds_start_replication;
Это можно сделать с помощью Tungsten Replicator, который представляет собой замену собственной репликации MySQL с открытым исходным кодом. Теперь он поддерживает репликацию от ведущего устройства MySQL к ведомому устройству Amazon RDS. Дополнительные сведения см. В следующей статье блога:
http://scale-out-blog.blogspot.com/2013/01/replicating-from-mysql-to-amazon-rds.html
Ура, Роберт Ходжес (коммиттер Tungsten)
К сожалению, в настоящее время не поддерживается Amazon. Надеюсь, что в будущем, поскольку я тоже жду этой способности.
Amazon AWS:
Мы рады объявить о выпуске реплик чтения для Amazon RDS. Теперь вы можете создать одну или несколько реплик данного «исходного» инстанса БД и обслуживать входящий трафик чтения из нескольких копий ваших данных. Этот новый вариант развертывания базы данных позволяет эластично масштабироваться за пределы ограничений емкости одного инстанса БД для рабочих нагрузок базы данных с большим количеством операций чтения. Вы можете использовать реплики чтения в сочетании с репликацией в нескольких зонах доступности для масштабируемых, надежных и высокодоступных развертываний производственных баз данных. Чтобы узнать больше о выпуске реплик для чтения, посетите сообщение на форуме здесь.
В дополнение к выпуску реплик чтения мы также снизили цены по требованию и зарезервированные для инстансов БД с двойной сверхбольшой памятью (m2.2xlarge) и Quadruple Extra Large (m2.4xlarge). Подробную информацию см. В разделе цен на странице сведений об Amazon RDS.