使用SSH隧道将本地SQL文件导入远程服务器上的MySQL

问题描述 投票:24回答:5

我使用putty SSH隧道在localhost和远程服务器之间建立连接。

没关系。

现在我需要一个命令来获取我的本地机器上的sql文件,即c:\ folder \ test.sql并将其导入远程服务器上的mysql

我想也许......

mysql -u prefix_username -p testpass -h localhost -P 3307 prefix_testdb

然后做一个像这样的命令

mysql -p testpass -u prefix_username prefix_testdb < c:\folder\test.sql 

这个命令不起作用。

我怎样才能做到这一点?

sql import ssh tunnel
5个回答
37
投票

您应该运行此命令

mysql -h host -u user_name -pPassword database < file.sql > output.log

file.sql包含要运行的sql查询和output.log只有当你有一个返回某些东西的查询时才有意义(比如select)

我在代码中看到的唯一不同的是-p选项和密码之间的空白。如果使用-p选项,则必须编写密码而不留空格。或者您只需使用选项--password =密码即可

我希望你能解决问题


11
投票

您将需要使用附加的mysql命令ssh到远程计算机:

ssh remote_user@remote_server mysql -p testpass -u username testdb < c:\folder\test.sql 

10
投票
 1. mysql -h xxx -uxxx -pxxx . //login to the remote mysql
 2. use DATABASE.             //assign which db to import
 3. source path/to/file.sql  //the path can be your local sql file path.

参考:Import SQL file into mysql


3
投票

使用'scp'复制和mysql插入本地机器。

句法:

scp remote_user@remove_server:/path/to/sql/file.sql ~/path/to/local/directory

转移文件后使用:

mysql -uYouUserName -p name_of_database_to_import_to < ~/path/to/local/directory/file.sql

-1
投票

您可以使用pscp将文件上载到服务器。转到您的命令行并键入此

pscp.exe c:\folder\test.sql [email protected]:/serverpath
© www.soinside.com 2019 - 2024. All rights reserved.