Как импортировать несколько баз данных одновременно через SSH? - PullRequest
2 голосов
/ 19 марта 2012

Я пытаюсь восстановить свою базу данных mysql на своем веб-сайте, и все таблицы в моей базе данных помещаются в отдельные файлы, поэтому я пытаюсь выяснить, как можно восстановить все файлы базы данных .sql через SSH с помощью одна (или простая команда) вместо того, чтобы восстанавливать все 100 таблиц по отдельности.

Ответы [ 2 ]

11 голосов
/ 19 марта 2012
cat *.sql > data.sql
mysql -u <username> -p < data.sql
1 голос
/ 19 марта 2012

Это зависит от того, как вы создали отдельные файлы - есть ли в них все инструкции для воссоздания таблиц (например, «Удалить, если существует ...», «Создать ...» и «Вставить в ...»). ), то вы можете объединить их в mysql:

cat *.sql | mysql -u xxx -pxxx dbname

или напишите скрипт для этого

#!/bin/sh
mysql -u xxx -pxxx dbname < file001.sql
mysql -u xxx -pxxx dbname < file002.sql

Второй вариант позволяет вам легче контролировать порядок обработки файлов.

Наконец, вы можете захотеть создать свои резервные копии более удобным способом - посмотрите mysqldump о том, как вывести базу данных (или несколько!) В один файл (в основном, «mysqldump -u xxx -pxxx dbname> dbname.sql») ", но есть несколько полезных флагов, которые вы можете добавить).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...