Імпорт та експорт даних mysql за допомогою mysqldump

Приклад команд для експорту та імпорту бази даних:

mysqldump -u ім'я_користувача -p -h імя_сервера_БД імя_бази> dump.sql

Дані будуть збережені у файлі dump.sql. Далі (в разі необхідності) відновлюємо дані з резервної копії (дампа) так:

mysql -u ім'я_користувача -p -h імя_сервера_БД імя_бази

Запущені зазначеним чином утиліти для роботи з MySQL будуть запитувати пароль до бази даних. Потрібно вводити пароль відповідного користувача БД.

/ *! 40101 SET NAMES cp1251 * /;

Наприклад, для кодування UTF8 потрібно вказати:

/ *! 40101 SET NAMES utf8 * /

Додаткові опції утиліти mysqldump:

--add-drop-table - опція, яка додає команду DROP TABLE перед створенням таблиць. Перед відновленням таблиць з дампа, таблиці з таким же ім'ям в робочій базі даних будуть видалені і перестворювати з резервної копії. Рекомендується використовувати для запобігання можливих помилок після відновлення;
--add-locks - опція, яка додає команди LOCK TABLES перед виконанням і UNLOCK TABLE після виконання кожного дампа таблиці. Застосовується для прискорення доступу до MySQL;
--quote-names - опція, що повідомляє утиліті про необхідність ставити лапки для назв таблиць і стовпців. Рекомендується до використання для MySQL версій, молодше 4.1.1. У старших версіях вона активована за замовчуванням.
Опції --quick і --opt рекомендується використовувати, якщо база даних MySQL занадто велика для того, щоб повністю поміститися в пам'яті.
При цьому утиліта mysqldump видає помилку:

В результаті рядок для створення копії бази даних виходить такою:

mysqldump --opt -u ім'я_користувача -p -h імя_сервера_БД --add-drop-table імя_бази> dump.sql

mysqldump --quick -u ім'я_користувача -p -h імя_сервера_БД --add-drop-table імя_бази> dump.sql

Схожі статті