Попытаюсь коротко описать процесс и некоторые команды mysqldump для бекапа (backup) базы MYSQL с последующим воcстановлением .
mysqldump — стандартная утилита позволяющая получить дамп содержимого базы данных или их совокупности. Создается резервная копия таблиц для пересылки их на другой SQL-сервер баз данных (не обязательно MySQL-сервер). Резервная копия или дамп содержит в себе набор команд SQL для последующего восстановления или преобразования (манипуляций).
mysqldump является консольной утилитой входящей в в стандартный комплект пакета ПО MYSQL , для работы с ней нужно использовать командный режим операционной системы (win cmd) или же в консоли Unix (bash, sh) на операционной системе linux или freebsd .
Синтаксис mysqldump программы прост:
mysqldump -u [username] -p [password] [databasename] > [dump_filename.sql]
[username] – имя пользователя который имеет доступ к базе данных.
[password] – пароль пользователя.
[databasename] – имя базы данных.
[dump_filename.sql] – имя сформированного файла (дампа) .
Разсмотрим пример как получить дамп базы данных mydb_databasename на MySQL сервере:
mysqldump -uAdmin -pPassword mydb_databasename > mydb_databasename.sql
Для воcстановления БД из получившегося дампа файла sql базы данных вводим:
mysql -uAdmin -pPassword mydb_databasename < mydb_databasename.sql
Мы рассмотрели в первом примере получение дампа и восстановления из него таблиц, предлогаю рассмотреть дополнительный пример для создания полного дампа всех баз которые хранятся на сервере.
Что бы сделать дамп всех баз данных которые находятся у вас на MySQL сервере воспользуйтесь след. примером:
mysqldump -uroot -prootpassword —all-databases > all_databases.sql
этой же утилитой можно создавать дамп структуры базы данных.
mysqldump —no-data —databases my_db1 my_db2 my_db3 > structurebackup.sql