ich weiß, wie eine SQL-Datei über die cli importieren:mysql import sql über cli von Remote-Server
mysql -u USER -p DBNAME < dump.sql
aber das ist, wenn die dump.sql Datei lokal ist. Wie könnte ich eine Datei auf einem Remote-Server verwenden?
ich weiß, wie eine SQL-Datei über die cli importieren:mysql import sql über cli von Remote-Server
mysql -u USER -p DBNAME < dump.sql
aber das ist, wenn die dump.sql Datei lokal ist. Wie könnte ich eine Datei auf einem Remote-Server verwenden?
Sie nicht sagen, was für den Netzwerkzugriff Sie auf dem Remote-Server haben.
Angenommen, Sie haben SSH-Zugriff auf den Remote-Server, könnten Sie die Ergebnisse einer Remote-Mysqldump auf den Befehl mysql pipen. Ich dies nur getestet, und es funktioniert gut:
ssh remote.com "mysqldump remotedb" | mysql localdb
ich Sachen wie Benutzer setzen, Passwort, Host in .my.cnf
so bin ich nicht ständig eingeben sie - ärgerlich und schlecht für die Sicherheit auf Multi-User-Systeme, Sie setzen Passwörter im Klartext in deine bash_history! Aber man kann leicht die -u -p -h
Sachen zurück in die an beiden Enden hinzufügen, wenn Sie es brauchen:
ssh remote.com "mysqldump -u remoteuser -p'remotepass' remotedb" | mysql -u localuser -p'localpass' localdb
Schließlich können Sie Rohr durch gzip
die Daten über das Netzwerk zu komprimieren:
ssh remote.com "mysqldump remotedb | gzip" | gzip -d | mysql localdb
würde ich wget entweder verwenden, um es in eine Datei oder eine Pipe in herunterladen.
Ich dachte, ich würde hinzufügen, da ich ernsthaft Platz auf meiner lokalen VM hatte, aber wenn die .SQL-Datei bereits auf dem Remote-Server vorhanden ist, könnten Sie tun;
ssh <ip-address> "cat /path/to/db.sql" | mysql -u <user> -p<password> <dbname>
Das hat mir sehr geholfen, als ich Server migrierte. Ich hoffe, der Fragesteller kann dies als Antwort auf die Frage auswählen. – Nikko
Was ist, wenn die SQL-Datei bereits existiert? –
Was passiert, wenn ich keinen SSH - Zugriff habe, aber über meinen lokalen "mysql --host = mydomain.com --user = user --pass = pass" eine Verbindung zum entfernten mysql Server herstellen kann? Wie kann ich die * .sql Datei abrufen? Datei muss ich dumpen? –