it-swarm.com.de

Wie exportiere ich eine Datenbank von einer Amazon RDS MySQL-Instanz in eine lokale Instanz?

In der AWS-Dokumentation steht Seite zum Importieren und Exportieren von Daten vom MySQL-Server, aber hauptsächlich zum Importieren. Das einzige, was ich in ihrer Dokumentation sehe, ist eine Möglichkeit, 5.6-Daten mithilfe der Replikation zu exportieren, die dokumentiert ist hier . Ich habe mich gefragt, ob es eine einfachere Möglichkeit gibt, Daten mit mysqldump zu exportieren und in die lokale Datenbank zu laden. Die Datenbank, die ich exportieren möchte, ist nicht riesig, kann 1 GB groß sein, daher ist die Größe kein Problem.

54
Srini K

Sicher.

Nehmen Sie den Dump vom Remote-RDS-Server:

mysqldump -h rds.Host.name -u remote_user_name -p remote_db > dump.sql

Wenn Sie zur Eingabe eines Kennworts aufgefordert werden, geben Sie das Kennwort für user = remote_user_name (Remote-Server) ein.

Laden Sie es auf Ihre lokale mySql-Instanz hoch:

mysql -u local_user_name -p local_db < dump.sql

Wenn Sie einen ec2 - Server in derselben Region besitzen, würde ich vorschlagen, dort einen Speicherauszug zu erstellen. Zip die Datei und dann scp es auf Ihrem lokalen Computer. Normalerweise ist die komprimierte Version der Datei viel kleiner und Sie können sie schneller übertragen.

90
TJ-

m db aus RDS zu exportieren

mysqldump -h rds.Host.name -u remote_user_name -p remote_db> remote_db.sql

Wenn Sie zur Eingabe eines Kennworts aufgefordert werden, geben Sie das Kennwort ein

m db auf RDS zu importieren

mysql -h rds.Host.name -u remote_user_name -p remote_db <remote_db.sql

Wenn Sie zur Eingabe eines Kennworts aufgefordert werden, geben Sie das Kennwort ein

16

Der beste Weg, Daten aus RDS zu exportieren, besteht darin, eine neue EC2-Instanz zu erstellen, um eine Verbindung herzustellen und MySQL zu sichern.

  1. Erstellen Sie eine neue EC2 Linux2-Instanz
  2. Verbinden Sie SSH
  3. Installieren Sie Docker

    • Aktualisieren Sie die installierten Pakete und den Paketcache auf Ihrer Instanz.

      Sudo yum update -y

    • Installieren Sie das neueste Docker Community Edition-Paket.
    • Amazon Linux 2.

      Sudo Amazon-Linux-Extras installieren Docker

    • Amazon Linux.

      Sudo yum Docker installieren

    • Starten Sie den Docker-Dienst.

      Sudo Service Docker starten

    • Fügen Sie den ec2-Benutzer der Docker-Gruppe hinzu, damit Sie Docker-Befehle ausführen können, ohne Sudo zu verwenden.

      Sudo usermod -a -G docker ec2-user

    • Melden Sie sich ab und wieder an, um die neuen Docker-Gruppenberechtigungen abzurufen. Sie können dies erreichen, indem Sie Ihr aktuelles SSH-Terminalfenster schließen und in einer neuen Instanz die Verbindung zu Ihrer Instanz wiederherstellen. Ihre neue SSH-Sitzung verfügt über die entsprechenden Docker-Gruppenberechtigungen.

    • Stellen Sie sicher, dass der ec2-Benutzer Docker-Befehle ohne Sudo ausführen kann.

      docker-Info

  4. Führen Sie den mysql-Container Aus

    docker run -it --network some-network --rm mysql mysql -h some-mysql -u beispiel-benutzer -p

  5. Führen Sie dump sql Aus.

    mysqldump -h Host -u benutzername -P 3306 -p --datenbanken datenbankname | gzip> db_name.gz

  6. Datei vom Container zum Host kopieren

    docker cp container_id:/home/home/ec2-user/sql_backup

2
Khôi Lê

Eine weitere sehr einfache Option ist die Verwendung der MySql Workbench. Wählen Sie in der Symbolleiste "Datenbank" und "Datenexport". Wählen Sie die richtigen Optionen, die Zieldatei ... und fertig! Immer sachte!

1
tjm1706