我有以下内容:

 mysqldump -u xxxx 
           -h localhost 
           --password=xxxxx databasename | 
           ssh username@00.000.00.202 "dd of=httpdocs/backup`date +'%Y-%m-%d-%H-%M-%S'`.sql"

...哪个SSH是远程机器的mysqldump。

我需要在SSH之前压缩mysqldump,因为转储是500mb并且它占用了我的带宽限额。

有帮助吗?

解决方案

  

mysqldump ... | gzip -9 | ssh ...

  

mysqldump ... | bzip2 -9 | ssh ...

或者,如果你想在另一端解压缩

  

mysqldump ... | bzip2 -9 | ssh machine" bzip2 -d> ..."

     

mysqldump ... | gzip -9 | ssh machine" gzip -d> ..."

其他提示

您可以将 -C 标志添加到 ssh 调用中,以自动压缩传输的数据。

你需要在mysqldump和ssh之间调用gzip,比如:

mysqldump [mysql options] | gzip | ssh [ssh options]

我建议将保存的文件扩展名更改为“.sql.gz”。同样。

这已经得到了回答和接受,但我认为你可能会发现这是一个有趣的选择。

Percona的OpenSource xtrabackup 应用程序将执行压缩(TAR即时备份 - 以及许多其他有趣的事情。

我在页面上找不到锚点,但向下滚动到“压缩备份”。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top