Импорт локального файла 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