mysqldump ze zdalnego hosta

Czy możliwe jest zrzut bazy danych ze zdalnego hosta przez połączenie ssh i posiadanie pliku kopii zapasowej na moim komputerze lokalnym.

Jeśli tak, to jak można to osiągnąć?

Zakładam, że będzie to jakaś kombinacja wyprowadzeń z ssh do zrzutu lub odwrotnie, ale nie mogę tego rozgryźć.

Author: Marty Wallace, 2012-11-27

4 answers

Spowoduje to zrzut, kompresję i przesyłanie strumieniowe przez ssh do lokalnego pliku

ssh -l user remoteserver "mysqldump -mysqldumpoptions database | gzip -3 -c" > /localpath/localfile.sql.gz 
 69
Author: Michel Feldheim,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-11-27 23:26:29

Zaczynając od rozwiązania @ MichelFeldheim, użyłbym:

$ ssh user@host "mysqldump -u user -p database | gzip -c" | gunzip > db.sql
 20
Author: Pierre de LESPINAY,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-03-10 07:58:16

ssh -f [email protected] -L 3306:server.com:3306 -N

Wtedy:

mysqldump -hlocalhost > backup.sql

Zakładając, że nie masz również mysql działającego lokalnie. Jeśli to zrobisz, możesz dostosować port do czegoś innego.

 3
Author: Michael,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-11-27 23:21:24

Stworzyłem skrypt aby ułatwić automatyzację mysqldump poleceń na zdalnych hostach, korzystając z odpowiedzi dostarczonej przez Michel Feldheim jako punkt wyjścia:

Mysqldump-remote

Skrypt pozwala pobrać zrzut bazy danych ze zdalnego hosta z lub bez SSH i opcjonalnie za pomocą pliku .env zawierającego zmienne środowiskowe.

Planuję użyć skryptu do automatycznego tworzenia kopii zapasowych bazy danych. Zapraszam do tworzenia zagadnienia / contribute - mam nadzieję, że pomoże to również innym!

 2
Author: Logan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-11-16 20:58:06