Как экспортировать базу данных из экземпляра Amazon RDS MySQL в локальный экземпляр?
В документации AWS есть эта страница, в которой говорится об импорте и экспорте данных с сервера MySQL, но в основном это касается импорта. Единственное, что я вижу в их документации, - это способ экспорта 5.6 данных с использованием репликации, который документирован здесь. Мне было интересно, есть ли более простой способ экспорта данных с помощью mysqldump и загрузки в локальную базу данных. База данных, которую я хочу экспортировать, не огромна, может быть 1 ГБ, поэтому размер не является проблемой.
Ответы
Ответ 1
Конечно.
Возьмите дамп с удаленного сервера RDS:
mysqldump -h rds.host.name -u remote_user_name -p remote_db > dump.sql
При запросе пароля укажите пароль для пользователя = remote_user_name (удаленный сервер)
Загрузите его в локальный экземпляр mySql:
mysql -u local_user_name -p local_db < dump.sql
Кроме того, если у вас есть сервер ec2
в том же регионе, я бы предложил взять там дамп. zip файл, а затем scp
его на локальный компьютер. Как правило, сжатая версия файла будет намного меньше, и вы сможете быстрее передать ее.
Ответ 2
Экспорт db из RDS
mysqldump -h rds.host.name -u remote_user_name -p remote_db > remote_db.sql
При запросе пароля укажите пароль
Чтобы импортировать db в RDS
mysql -h rds.host.name -u remote_user_name -p remote_db < remote_db.sql
При запросе пароля укажите пароль
Ответ 3
Другой очень простой вариант - использование MySql Workbench. На панели инструментов выберите "База данных" и "Экспорт данных". Выберите правильные параметры, целевой файл... и все готово! Легко это делает!
Ответ 4
Лучший способ экспортировать данные из RDS - это создать новый экземпляр EC2 для подключения и выгрузки mysql.
- Создать новый экземпляр EC2 Linux2
- Подключите SSH
-
Установить докер
- Обновите установленные пакеты и кеш пакетов на вашем экземпляре.
обновление sudo yum -y
- Установите самый последний пакет Docker Community Edition.
- Amazon Linux 2.
sudo amazon-linux-extras установить докер
-
Amazon Linux.
sudo yum установить докер
-
Запустите сервис Docker.
запуск докера службы sudo
-
Добавьте ec2 -u ser в группу docker, чтобы вы могли выполнять команды Docker без использования sudo.
sudo usermod -a -G docker ec2 -u ser
-
Выйдите из системы и снова войдите в систему, чтобы получить новые разрешения группы докеров. Вы можете сделать это, закрыв текущее окно терминала SSH и повторно подключившись к своему экземпляру в новом. Ваш новый сеанс SSH будет иметь соответствующие разрешения группы докеров.
- Убедитесь, что ec2 -u ser может запускать команды Docker без sudo.
информация о докере
- Запустите MySQL контейнер
Docker run -it - сеть some-network --rm mysql mysql -h some-mysql -u пример -u ser -p
- Запустить дамп sql
mysqldump -h хост -u имя_пользователя -p 3306 -p --db_name баз данных | gzip> db_name.gz
- Копировать файл из контейнера на хост
docker cp container_id: /home/home/ec2 -u ser/sql_backup