Как скопировать базу данных с помощью RDS

У меня есть экземпляр базы данных в RDS с двумя базами данных. Есть ли хороший способ использовать инструменты командной строки RDS для копирования одной базы данных в другую? Если нет, каков рекомендуемый способ сделать это?

Спасибо заранее.

Ответ 1

Я бы использовал mysqldump, чтобы получить таблицы, а затем mysql, чтобы импортировать их.


Обновление 2014/07/08. В зависимости от того, что вы планируете делать здесь, другим решением сегодня является настройка репликации, а затем продвижение подчиненного устройства в качестве ведущего. Это, например, если вы хотите обновить версию/версию базы данных: http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ReadRepl.html

Если вы ищете внешнюю резервную копию, то также репликация: http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/MySQL.Procedural.Exporting.NonRDSRepl.html

RDS прошел долгий путь.

Ответ 2

Это не точное решение для OP, но если вам нужно всего лишь клонировать существующую базу данных для новой цели, это проще. Вы можете сделать снимок из исходного экземпляра RDS, а затем restore в новый экземпляр. Вы даже можете использовать веб-консоль.

Ответ 3

это зависит от того, какая база данных вы там размещаете - для SQL Server я использовал мастер миграции Azure Migration (бесплатно скачать из CodePlex).

Чтобы получить полную функциональность RDBMS, трюк заключается в использовании имени DNS вашего экземпляра SQL Server в мастере, но выберите "SQL Server v2008" (или, наконец, v2012 после того, как AWS RDS сделает экземпляры с 2012 доступными) и НЕ выбирайте → 'SQL Azure'. Я сделал короткий скринкаст на этом блоге .