В этой статье показано несколько практических примеров того, как выполнять различные операции резервного копирования баз данных MySQL/MariaDB с помощью команды mysqldump, а также мы увидим, как восстановить их с помощью mysql а также mysqlimport.
mysqldump это клиентская программа командной строки, она используется для локального или удаленного дампа базы данных MySQL или набора баз данных для резервного копирования в один файл.
Мы предполагаем, что у вас уже установлен MySQL на linux с административными правами, а так же было-бы не плохо если у вас уже есть небольшие знания о MySQL.
Как сделать резервную копию базы данных MySQL в Linux?
Чтобы сделать резервную копию MySQL базы данных, вы должны иметь к ней доступ. Формат команды будет такой.
# mysqldump -u [username] –p[password] [database_name] > [dump_file.sql]
Параметры указанной команды следующие.
- [username] : допустимое имя пользователя MySQL.
- [password] : Действительный пароль MySQL для пользователя.
- [database_name] : допустимое имя базы данных, для которой вы хотите сделать резервную копию.
- [dump_file.sql]: имя файла дампа резервной копии, который вы хотите создать.
Как сделать резервную копию одной базы данных MySQL?
Чтобы сделать резервную копию одной базы данных, используйте следующую команду. Команда сбросит базу данных [rsyslog] структуру с данными в один файл дампа, называемый rsyslog.sql.
# mysqldump -u root -ptecmint rsyslog > rsyslog.sql
Как сделать резервную копию нескольких баз данных MySQL?
Если вы хотите сделать резервную копию нескольких баз данных, выполните следующую команду. В следующем примере команда выполняет резервное копирование баз данных [rsyslog, syslog] копируя структуру и данные в один файл с именем rsyslog_syslog.sql.
# mysqldump -u root -ptecmint --databases rsyslog syslog > rsyslog_syslog.sql
Если вы хотите сделать резервную копию всех баз данных, используйте следующую команду с параметром —all-database. Следующая команда создаст резервную копию всех баз данных с их структурой и данными в файл с именем all-databases.sql.
# mysqldump -u root -ptecmint --all-databases > all-databases.sql
Как сделать резервную копию только структуры базы данных MySQL?
Если вы хотите сделать только резервную копию структуры базы данных, используйте в команде опцию -–no-data. Приведенная ниже команда экспортирует базу данных [rsyslog] Structure в файл rsyslog_structure.sql.
# mysqldump -u root -ptecmint -–no-data rsyslog > rsyslog_structure.sql
Как сделать резервную копию только данных базы MySQL?
Для резервного копирования базы данных data without structure, используйте вариант с командой –no-create-info. Эта команда принимает базу данных [rsyslog] Data в файл rsyslog_data.sql.
# mysqldump -u root -ptecmint --no-create-db --no-create-info rsyslog > rsyslog_data.sql
Как сделать резервную копию одной таблицы базы данных?
С помощью приведенной ниже команды вы можете сделать резервную копию одной таблицы или определенных таблиц вашей базы данных. Например, следующая команда делает резервную копию только таблицы wp_posts из базы данных wordpress.
# mysqldump -u root -ptecmint wordpress wp_posts > wordpress_posts.sql
Как сделать резервную копию нескольких таблиц базы данных?
Если вы хотите сделать резервную копию нескольких или определенных таблиц из базы данных, разделите каждую таблицу пробелом.
# mysqldump -u root -ptecmint wordpress wp_posts wp_comments > wordpress_posts_comments.sql
Как сделать резервную копию удаленной базы данных MySQL
Приведенная ниже команда создает резервную копию удаленного сервера. [172.16.25.126] база данных [gallery] на локальный сервер.
# mysqldump -h 172.16.25.126 -u root -ptecmint gallery > gallery.sql
Как восстановить базу данных MySQL?
В приведенном выше руководстве мы увидели, как сделать резервную копию баз данных, таблиц и структур, теперь мы увидим, как восстановить их, используя следующий формат.
# # mysql -u [username] –p[password] [database_name] < [dump_file.sql]
Как восстановить единую базу данных MySQL
Чтобы восстановить базу данных, вы должны создать пустую базу на целевой машине и восстановить ее, используя команду msyql. Например, следующая команда восстановит файл rsyslog.sql в базу данных rsyslog.
# mysql -u root -ptecmint rsyslog < rsyslog.sql
Если вы хотите восстановить базу данных, которая уже существует на целевой машине, вам нужно будет использовать команду mysqlimport.
# mysqlimport -u root -ptecmint rsyslog < rsyslog.sql
Таким же образом вы можете восстанавливать таблицы, структуры и данные базы данных. Если вам понравилась эта статья, то поделитесь ею с друзьями.