2015-03-12 3 views
1

У меня есть рубин на рейках, работающих на amazon ec2, база данных mySQL.Как работает Ruby on rails с Amazon RDS

Теперь я хочу использовать Amazon RDS для резервного копирования этой базы данных в случае сбоя ec2.

Я прочитал руководство пользователя Amazon RDS, в котором рассказывается, как создать экземпляр БД.

Мой вопрос:

1.Что является соотношение между созданного экземпляра DB и моей базе данных ec2?

2. Когда экземпляр БД «подключится» к моему ec2, что произойдет? Данные, отправляемые на сервер ec2 mySQL, будут отправляться экземпляру DB? Является ли база данных полностью перенесена на экземпляр БД? Поэтому перед тем, как я подключусь, я должен создать одну и ту же базу данных в экземпляре БД и сказать, что ec2 отправляет данные в RDS с тех пор, как

3.Если нет, как экземпляр DB знает, что ec2 не работает и захватить данные?

EDIT: (Неуверенный) Является ли это, что экземпляр DB просто место, чтобы положить database.In для того, чтобы использовать его, мне нужно, чтобы создать базу данных в БД, например, а затем подключиться к нему путем изменения database.yml file (этот файл сообщает серверу rails, где хранятся данные).

Как можно указать, когда локальная база данных останавливается, а затем переключается на экземпляр DB?

ответ

3

Абсолютно никаких отношений между вашим DB DB EC2 и экземпляром RDS DB. То, что вы просите, просто невозможно.

Лучший подход, который я бы сказал, это иметь только RDS (не нужно, чтобы MySQL работал локально на экземпляре EC2). RDS регулярно выполняет моментальные снимки. Кроме того, RDS является управляемой службой, поэтому большинство задач администрирования MySQL обрабатываются AWS, и вам не нужно беспокоиться. И вы можете полагаться на моментальные снимки RDS с точки зрения резервного копирования.

+0

Ответ на этот вопрос очень полезен, поэтому мне нужно настроить мою базу данных RDS, такую ​​же, как и ec2, до того, как я подключу к Ruby приложение rails к нему? Можно ли просто загрузить текущий файл sql из ec2 и импортировать в RDS? – Orz

+0

Не уверен, что вы подразумеваете под 'sql-файлом из ec2'. Однако, я думаю, вы можете взять дамп существующего MySQL, который находится на EC2, а затем восстановить его в одной из баз данных на RDS. Таким образом, у вас будет вся ваша схема/данные/структура MySQL в RDS. Позже вы можете указать свое приложение RoR конечной точке RDS, а затем использовать его как еще одну удаленную базу данных MySQL. Кроме того, вы можете изучить опцию RDS 'Multi-AZ' с точки зрения высокой доступности. – slayedbylucifer

Смежные вопросы