场景
将linux服务器A中的数据文件迁移到linux服务器B,当文件很大的之后,压缩直接传输会出现传输很久,且中间一段暂停,又得重新上传。这时候需要可以将压缩的文件的分割传输然后解压合并。
linux服务器A文件压缩
> tar -czvp -f zhixing.tar.gz zhixing.sql
压缩包A分割多个文件包
> split -b 4000k zhixing.tar.gz split_zhixing.tar.gz
按4000k大小分割A.tar.gz 生成B.tar.gzaxxx
这时候,当前目录会生成
B.tar.gzaa B.tar.gzab B.tar.gzac B.tar.gzad B.tar.gzae等文件
linux文件A传输到文件linux服务器B
登录服务器A终端,执行下面命令:
scp /path/B.tar.gzaa username@B:/path
scp /path/B.tar.gzab username@B:/path
scp /path/B.tar.gzac username@B:/path
...
更多scp命令,参考https://www.linuxprobe.com/linux-scp.html
合并解压
进入服务器B,进入文件相关目录
合并传输的压缩文件
> cat split_zhixing.tar.gz* > zhixing.tar.gz
或者一个一个的合并
cat B.tar.gzaa >B_cat.tar.gz
cat B.tar.gzab >B_cat.tar.gz
cat B.tar.gzac >B_cat.tar.gz
....
解压压缩的文件
tar -zxvf B_cat.tar.gz
如上几步操作,即可实现将linux服务器A中的大数据文件迁移到linux服务器B
查看结果