以下工作按预期进行:
# mysqldump -uroot -pPasswd central conc_passenger --no-create-info --compact | mysql -h192.168.50.51 mysql -uroot -pPassWord someDB
这也适用:
# mysqldump -uroot -pPasswd central conc_passenger --no-create-info --compact | gzip | ssh 192.168.50.51 "gunzip | mysql -uroot -pPassWord someDB"
但是当我没有远程服务器的 SSH 访问权限时,我该如何提取数据?这不起作用::
# mysqldump -uroot -pPasswd central conc_passenger --no-create-info --compact | gzip | "gunzip | mysql -uroot -pPassWord someDB
“
gzip 和 gunzip 只是通过 ssh 连接更快地发送数据。它不会更快地将任何数据加载到 mysql 中,当调用加载它的 mysql 命令时,它是完全解压缩的。
尝试以下操作之一:
或者,使用压缩来加速客户端和服务器之间的直接传输(如果客户端和服务器都支持)尝试:
第二个与第一个相同,但向 mysql 客户端添加了“--compress”。
来源:mysql命令选项
或者,如果您确实需要,总是有旧的备用方法:复制并粘贴(是的,真的):
mysqldump -uroot -pPasswd central conc_passenger --no-create-info --compact | gzip | base64
然后将该命令的输出放在以下位置
B64DATA
:echo 'B64DATA' | base64 -id | zcat | mysql -uroot -pPasswd someDB
并在远程主机上运行它。是的,有更好的方法,但是当您只需要将几十 KB 从一个地方移动到另一个地方并且每个窗口都在六个级联终端会话的末尾时,利用您已经并排拥有两个窗口的事实GUI 中的 -side 可以成为救命稻草。