Ответ 1
Вы можете указать имя сервера как опцию mysqldump
:
mysqldump --host servername dbname > dbname.sql
У меня есть база данных MySQL на удаленном сервере, у меня есть только соединение с sql-соединением, у меня нет FTP-доступа к серверу, и мне нужно сделать полный дамп базы данных, я пробовал mysqldump, но проблема это создание вывода на сервере, и поскольку у меня нет FTP, я не могу получить вывод с сервера, как я могу сделать чистую резервную копию и получить дамп на моей локальной машине? (конечно, резервная копия должна быть восстановлена на моей локальной машине)
спасибо Стивен
Вы можете указать имя сервера как опцию mysqldump
:
mysqldump --host servername dbname > dbname.sql
mysqldump --host hostaddress -P portnumber -u username -ppassword dbname > dbname.sql
Обычно удаленный порт MySQL равен 3306. Вот пример:
mysqldump --host 192.168.1.15 -P 3306 -u dev -pmjQ9Y mydb > mydb.sql
Вы можете использовать Workbench MySQL http://www.mysql.com/products/workbench/, который может выполнять резервное копирование непосредственно в локальную папку с помощью удобного интерфейса
Я использую SQLyog для этого, где мы можем подключиться к удаленному серверу и выполнить резервное копирование с помощью этого инструмента.
Если сервер допускает PHP, вы можете загрузить и попробовать Adminer. Мне нравится это как заменитель PHPMyAdmin, и вы можете создавать с ним резервные копии!
mysqldump.exe
блокирует таблицы по умолчанию, поэтому другие действия SQL не возможны во время дампа. Без блокировки любых таблиц используйте следующий синтаксис для резервного копирования полного удаленного db и сбрасывания всего на вашем локальном компьютере:
mysqldump -u username -p --single-transaction --quick --lock-tables=false -h ipaddress myDB > backup.sql
Измените username
на свое собственное имя пользователя, измените ipaddress
на удаленный IP-адрес и myDB
на фактическую базу данных, которую вы хотите создать. Это даст вам пароль. После этого начинается свалка.