MariaDB - методы загрузки резервных копий
В этой главе мы узнаем о различных методах загрузки резервных копий. Восстановление базы данных из резервной копии - простой, а иногда и ужасно долгий процесс.
Есть три варианта загрузки данных: оператор LOAD DATA, mysqlimport и простое восстановление mysqldump.
Использование НАГРУЗКИ ДАННЫХ
Оператор LOAD DATA работает как массовый загрузчик. Просмотрите пример его использования, который загружает текстовый файл -
mysql> LOAD DATA LOCAL INFILE 'products_copy.txt' INTO TABLE empty_tbl;
Обратите внимание на следующие качества оператора LOAD DATA:
Используйте ключевое слово LOCAL, чтобы запретить MariaDB выполнять глубокий поиск хоста, и используйте очень конкретный путь.
Этот оператор предполагает формат, состоящий из строк, заканчивающихся переводом строки (новой строки), и значений данных, разделенных табуляцией.
Используйте предложение FIELDS, чтобы явно указать форматирование полей в строке. Используйте предложение LINES, чтобы указать окончание строки. Просмотрите пример ниже.
mysql> LOAD DATA LOCAL INFILE 'products_copy.txt' INTO TABLE empty_tbl
FIELDS TERMINATED BY '|'
LINES TERMINATED BY '\n';
В заявлении предполагается, что столбцы в файле данных используют тот же порядок, что и таблица. Если вам нужно установить другой порядок, вы можете загрузить файл следующим образом:
mysql> LOAD DATA LOCAL INFILE 'products_copy.txt' INTO TABLE empty_tbl (c, b, a);
Использование MYSQLIMPORT
Инструмент mysqlimport действует как оболочка ЗАГРУЗКИ ДАННЫХ, позволяющая выполнять те же операции из командной строки.
Загрузите данные следующим образом -
$ mysqlimport -u root -p --local database_name source_file.txt
Укажите форматирование следующим образом -
$ mysqlimport -u root -p --local --fields-terminated-by="|" \
--lines-terminated-by="\n" database_name source_file.txt
Использовать --columns возможность указать порядок столбцов -
$ mysqlimport -u root -p --local --columns=c,b,a \
database_name source_file.txt
Использование MYSQLDUMP
Восстановление с mysqldump требует этого простого оператора для загрузки файла дампа обратно на хост -
shell> mysql database_name < source_file.sql
ОСОБЫЕ ПЕРСОНАЖИ И ЦИТАТЫ
В операторе LOAD DATA кавычки и специальные символы могут интерпретироваться неправильно. Оператор принимает значения без кавычек и обрабатывает обратную косую черту как escape-символы. Используйте предложение FIELDS, чтобы указать форматирование. Укажите на кавычки с «ENCLOSED BY», что приведет к удалению кавычек из значений данных. Измените escape-последовательности с помощью «ESCAPED BY».