Импорт локального файла SQL в MySQL на удаленном сервере с использованием SSH-туннеля

У меня есть связь между моим локальным хостом и удаленным сервером с использованием туннеля SSH-шлейфа.

Хорошо.

Теперь мне нужна команда, чтобы получить файл 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 

эта команда не работает.

Как я могу это понять?

Ответы

Ответ 1

Вы должны запустить эту команду

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

file.sql содержит запросы sql для запуска и output.log имеет смысл только тогда, когда у вас есть запрос, который возвращает что-то (например, select)

Единственное, что я вижу в вашем коде, - это пробел между параметром -p и паролем. Если вы используете опцию -p, вы должны написать пароль, не оставляя пустого места. Или вы просто можете использовать опцию --password = Password

Надеюсь, вы сможете решить проблему.

Ответ 2

Вам понадобится ssh для удаленной машины с добавленной командой mysql:

ssh [email protected]_server mysql -p testpass -u username testdb < c:\folder\test.sql 

Ответ 3

 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.

Ссылка: импортировать файл SQL в MySQL

Ответ 4

Используйте 'scp' для копирования и mysql для вставки на ваш локальный компьютер.

Синтаксис:

scp [email protected]_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

Ответ 5

Вы можете использовать pscp для загрузки файла на сервер. Перейдите в свою командную строку и введите этот

pscp.exe c:\folder\test.sql [email protected]:/serverpath