MariaDB - Методы резервного копирования

Данные служат основой бизнеса и операций, и при различных возможных угрозах (например, злоумышленники, системные сбои, плохие обновления и ошибки обслуживания) резервные копии остаются критически важными. Эти резервные копии принимают множество форм, и существует множество вариантов их создания с еще более широким набором параметров в рамках этих процессов. Важно помнить о типе базы данных, важной информации и структуре. Эта информация определяет ваш лучший вариант.

ПАРАМЕТРЫ

Основные варианты резервного копирования включают логические и физические резервные копии. Логические резервные копии содержат операторы SQL для восстановления данных. Физические резервные копии содержат копии данных.

  • Logical backupsпредлагают гибкость восстановления данных на другом компьютере с другой конфигурацией в отличие от физических резервных копий, которые часто ограничиваются одним и тем же компьютером и типом базы данных. Логическое резервное копирование происходит на уровне базы данных и таблицы, а физическое - на уровне каталогов и файлов.

  • Physical backupsимеют меньший размер, чем логические, а также требуют меньше времени на выполнение и восстановление. Физические резервные копии также включают файлы журналов и конфигурации, а логические - нет.

Инструменты резервного копирования

Основной инструмент, используемый для резервного копирования MariaDB, - это mysqldump. Он предлагает логическое резервное копирование и гибкость. Это также отличный вариант для небольших баз данных.Mysqldumpвыгружает данные в SQL, CSV, XML и многие другие форматы. Его вывод не сохраняет хранимые процедуры, представления и события без явных инструкций.

Есть три варианта mysqldump резервные копии -

  • Raw data - Выгрузить таблицу как файл необработанных данных с помощью параметра --tab, который также указывает место назначения файла -

$ mysqldump -u root -p --no-create-info \
   --tab=/tmp PRODUCTS products_tbl
  • Data/Definitions export- Этот параметр позволяет экспортировать одну или несколько таблиц в файл и поддерживает резервное копирование всех существующих баз данных на главном компьютере. Изучите пример экспорта содержимого или определений в файл

$ mysqldump -u root -p PRODUCTS products_tbl > export_file.txt
  • Transfer - Вы также можете выводить базы данных и таблицы на другой хост

$ mysqldump -u root -p database_name \
   | mysql -h other-host.com database_name

Использование оператора SELECT ... INTO OUTFILE

Другой вариант экспорта данных использует оператор SELECT ... INTO OUTFILE. Этот простой вариант выводит таблицу в простой форматированный текстовый файл -

mysql> SELECT * FROM products_tbl
   -> INTO OUTFILE '/tmp/products.txt';

Его атрибуты позволяют отформатировать файл в соответствии с вашими предпочтительными спецификациями.

Обратите внимание на следующие качества этого утверждения:

  • Имя файла должно указывать желаемое расположение для вывода.

  • Для выполнения инструкции вам потребуются права файла MariaDB.

  • Имя выходного файла должно быть уникальным.

  • Вам нужны учетные данные для входа на хост.

  • В среде UNIX выходной файл доступен для чтения всем, но его владение сервером влияет на возможность его удаления. Убедитесь, что у вас есть привилегии.

Использование CONNECT в резервных копиях

Обработчик CONNECT позволяет экспортировать данные. Это оказывается полезным в первую очередь в ситуациях, когда операция SELECT ... INTO OUTFILE не поддерживает формат файла.

Просмотрите следующий пример -

create table products
engine = CONNECT table_type = XML file_name = 'products.htm' header = yes
option_list = 'name = TABLE,coltype = HTML,attribute = border = 1;cellpadding = 5'

select plugin_name handler, plugin_version version, plugin_author
author, plugin_description description, plugin_maturity maturity
from information_schema.plugins where plugin_type = 'STORAGE ENGINE';

Другие инструменты

Другие варианты резервного копирования следующие:

  • XtraBackup- Эта опция предназначена для баз данных XtraDB / InnoDB и работает с любым механизмом хранения. Узнайте больше об этом инструменте на официальном сайте Percona.

  • Snapshots- Некоторые файловые системы позволяют делать снимки. Процесс состоит из очистки таблиц с блокировкой чтения, монтирования моментального снимка, разблокировки таблиц, копирования моментального снимка и затем размонтирования моментального снимка.

  • LVM- В этом популярном методе используется сценарий Perl. Он получает блокировку чтения для каждой таблицы и сбрасывает кеши на диск. Затем он получает снимок и разблокирует таблицы. Проконсультируйтесь с официальнымmylvmbackup веб-сайт для получения дополнительной информации.

  • TokuBackup- Это решение, предоставленное Percona, обеспечивает горячее резервное копирование с учетом проблем и ограничений параметров резервного копирования InnoDB. Он создает транзакционную звуковую копию файлов, в то время как приложения продолжают манипулировать ими. Дополнительную информацию можно получить на веб-сайте Percona.

Рекомендации по INNODB

InnoDB использует буферный пул для повышения производительности. В резервной копии настройте InnoDB, чтобы избежать копирования всей таблицы в буферный пул, потому что логические резервные копии обычно выполняют полное сканирование таблицы.