Команда SQL для резервного копирования и восстановления базы данных MySQL - PullRequest
1 голос
/ 16 мая 2009

Нужно предоставить эту возможность одним нажатием кнопки в моем веб-приложении. Можно было бы сделать это с помощью mysqldump, но для этого мне пришлось бы запустить внешний процесс? (командная строка)

Существует ли простой запрос SQL, который позволяет нам выполнять резервное копирование и восстановление баз данных? (особенно для MySQL)

Ответы [ 3 ]

2 голосов
/ 16 мая 2009

Если вы используете MySQL 6, все в порядке - см. http://dev.mysql.com/doc/refman/6.0/en/backup-database-restore.html. Если вы работаете на MySQL 5, все не так радужно - вам, вероятно, лучше использовать подход mysqldump / external process.

1 голос
/ 16 мая 2009

mysqldump, вероятно, ваш лучший выбор. Вы можете сохранить строки таблицы с помощью SELECT ... INTO OUTFILE и перезагрузить ее с помощью LOAD DATA INFILE , но вам придется делать это таблица за таблицей и записывать схемы таблиц в другой файл для полного резервного копирования.

Что плохого в том, чтобы порождать процесс для запуска mysqldump?

0 голосов
/ 16 мая 2009

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

Или вы выполняете несколько запросов (как это делает PHPMyAdmin) и сохраняете результат где-то по своему усмотрению.

Но для этого не существует простого запроса «одна команда».

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