首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mysql通过cli从远程服务器导入sql

问mysql通过cli从远程服务器导入sql
EN

Stack Overflow用户
提问于 2008-10-29 20:05:31
回答 3查看 10.5K关注 0票数 7

我知道如何通过cli导入sql文件:

代码语言:javascript
复制
mysql -u USER -p DBNAME < dump.sql

但这是在dump.sql文件是本地文件的情况下。如何使用远程服务器上的文件?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2008-10-29 20:39:43

你没有说你对远程服务器有什么网络访问权限。

假设您拥有对远程服务器的SSH访问权限,那么您可以通过管道将远程mysqldump的结果传递给mysql命令。我刚刚测试了一下,它工作得很好:

代码语言:javascript
复制
ssh remote.com "mysqldump remotedb" | mysql localdb

我将用户、密码、主机等内容放入.my.cnf中,这样我就不会不断地键入它们--这对多用户系统的安全性来说既烦人又不好,因为您是在bash_history中以明文形式输入密码!但是,如果需要的话,您可以很容易地在两端都添加-u -p -h内容:

代码语言:javascript
复制
ssh remote.com "mysqldump -u remoteuser -p'remotepass' remotedb" | mysql -u localuser -p'localpass' localdb

最后,您可以通过gzip来压缩网络上的数据:

代码语言:javascript
复制
ssh remote.com "mysqldump remotedb | gzip" | gzip -d | mysql localdb
票数 24
EN

Stack Overflow用户

发布于 2015-07-30 23:19:05

当我在本地虚拟机上的空间严重不足时,我想我应该添加这个文件,但是如果.sql文件已经存在于远程服务器上,您可以这样做;

代码语言:javascript
复制
ssh <ip-address> "cat /path/to/db.sql" | mysql -u <user> -p<password> <dbname>
票数 3
EN

Stack Overflow用户

发布于 2008-10-29 20:08:09

我会使用wget将其下载到文件中,或者通过管道将其输入。

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

https://stackoverflow.com/questions/248219

复制
相关文章

相似问题

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