首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >mysqldump压缩

mysqldump压缩
EN

Stack Overflow用户
提问于 2012-03-27 18:21:21
回答 3查看 51.8K关注 0票数 25

我正在尝试理解mysqldump是如何工作的:

如果我在pc上执行mysqldump并连接到远程服务器:

mysqldump -u mark -h 34.32.23.23 -pxxx  --quick | gzip > dump.sql.gz

服务器会将其压缩并以gzip格式发送给我吗?还是我的计算机会先接收所有数据,然后再压缩?

因为我有一个非常大的远程数据库要导出,我想知道通过网络进行导出的最快方法!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-03-27 18:32:36

您应该使用ssh + scp,

因为localhost上的转储更快,

而且你只需要在gzip上执行scp (减少网络开销)

很可能你可以做到这一点

ssh $username@34.32.23.23 "mysqldump -u mark -h localhost -pxxx --quick | gzip > /tmp/dump.sql.gz"

scp $username@34.32.23.23:/tmp/dump.sql.gz .

( /tmp的可选目录,应该改成你喜欢的目录)

票数 38
EN

Stack Overflow用户

发布于 2012-03-27 18:38:35

票数 17
EN

Stack Overflow用户

发布于 2012-03-27 18:31:30

我是这样做的:

使用SELECT INTO OUTFILE执行部分导出,并在同一台服务器上创建文件。

如果您的表包含1000万行。每次在单独的文件中执行一次100万行的部分导出。

一旦第一个文件准备好,你就可以压缩和传输它了。同时,MySQL可以继续将数据导出到下一个文件。

在另一台服务器上,您可以开始将文件加载到新数据库中。

顺便说一句,这里的很多东西都可以用脚本化。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9887637

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档