Как вывести и сжать базу данных MySQL в Windows только с помощью командной строки

8058
Kokizzu

Возможно ли сделать резервную копию и сжать, как в Linux: mysqldump --all-databases | lzma > all.sql.gz

У меня есть только smb://и cmd.exeдоступ через winexe, так что нет графического интерфейса (удаленный рабочий стол не включен, требуется Kerberos или что-то), и phpmyadminслишком медленно / тайм-аут при сбросе базы данных 1,2 ГБ.

4
mysqldump.exe –e –u [имя пользователя] -p [пароль] -h [имя хоста] [имя базы данных]> C: \ [имя файла] .sql это вызвало у вас какие-либо проблемы? skv 9 лет назад 0
проблема была бы, это несжатый .. Kokizzu 9 лет назад 0

1 ответ на вопрос

2
Kokizzu

Нашли решение, скачайте любую утилиту сжатия командной строки, например: xz (она дает хороший коэффициент сжатия: от 1.2GBразмера базы данных до просто 100MB), поместите ее в каталог mysql с помощью smb://, затем запустите cmd.exe, измените каталог на каталог mysql, используя cd, затем выполните:

mysqldump -u user -p --all-databases | xz > all.sql.xz 

затем просто скопируйте 100MBфайл резервной копии в окно Linux черезsmb://

РЕДАКТИРОВАТЬ : на самом деле это >2GBкогда экспортируется в .sql, так что мне действительно нужно сжатие:

$ xz --list mysql-all_20141128_2012.sql.xz  Strms Blocks Compressed Uncompressed Ratio Check Filename 1 1 96.2 MiB 2,297.7 MiB 0.042 CRC64 mysql-all_20141128_2012.sql.xz 
http://stackoverflow.com/questions/11214437/php-mysqldump-and-zip-7z это имеет версию 7zip skv 9 лет назад 1
да, спасибо ^^ я все равно это сделал .. Kokizzu 9 лет назад 0