Gdzie komenda mysqldump przechowuje kopie zapasowe baz danych?

10

Próbuję wykonać kopię zapasową moich baz danych za pośrednictwem terminala w Ubuntu za pomocą mysqldumppolecenia i to się udało. Gdzie umieszcza kopie zapasowe baz danych?

Wykonuję polecenie w następujący sposób:

$ mysqldump -h localhost -u username - p database_name > back_up_db.sql

ale nie mam pojęcia, gdzie back_up_db.sqljest przechowywany.

Paul White 9
źródło

Odpowiedzi:

12

Domyślnie robi to do katalogu roboczego w momencie wydania polecenia. Musisz przekierować wyjście do pliku, jeśli chcesz go zapisać.

Miejsce, w którym umieścisz kopię zapasową, zależy od Ciebie. Najlepiej byłoby, gdyby był na innej maszynie w innym fizycznym miejscu. Dlatego zwykle wykonujesz zdalny zrzut MySQL przez SSH i pobierasz dane na innym komputerze. Po prostu potokujesz wyjście konsoli przez ssh do pliku na innym komputerze.

Rasika
źródło
10

Należy również zauważyć, że polecenie mysqldump ma również przełącznik pliku docelowego .

--result-file=file_name, -r file_name
randomx
źródło
7

Zwykle używasz zrzutu mysql w ten sposób

mysqldump -h host -u user -ppassword dbname > dumpfile

Tak więc wynikiem jest dowolny plik, do którego przekierowujesz dane wyjściowe. Plik wyjściowy będzie zawierał instrukcje, które odbudują bazę danych od zera, w tym schemat, jeśli uruchomisz go przy nowej instalacji.

mysql -h host -u user -ppassword dbname < dumpfile

Oto wiki o przekierowaniach IO


źródło
1

Zostanie on zapisany w ścieżce lub folderze, z którego uruchomiono polecenie mysql, wprowadź opis zdjęcia tutaj załóżmy, że uruchomisz polecenie z poziomu katalogu głównego, a następnie zostanie ono zapisane w katalogu głównym

możesz zobaczyć mój plik kopii zapasowej skillmappingcleardata.sql w katalogu głównym, ponieważ stamtąd uruchamiam komendę mysql

selftaught91
źródło