Mariadb 简明教程

MariaDB - Backup Loading Methods

在本章中,我们将了解各种备份加载方法。从备份还原数据库是一个简单但有时非常漫长的过程。

加载数据有三种选择:LOAD DATA 语句、mysqlimport 和简单的 mysqldump 还原。

Using LOAD DATA

LOAD DATA 语句用作批量加载器。查看其中加载文本文件的用例示例 −

mysql> LOAD DATA LOCAL INFILE 'products_copy.txt' INTO TABLE empty_tbl;

注意 LOAD DATA 语句的以下特点 −

  1. 使用 LOCAL 关键字以防止 MariaDB 对主机执行深度搜索,并使用非常具体的路径。

  2. 该语句假定格式由换行符(换行符)终止的行和由制表符分隔的数据值组成。

  3. 使用 FIELDS 子句显式指定一行中域的格式。使用 LINES 子句指定行结尾。查看下面的示例。

mysql> LOAD DATA LOCAL INFILE 'products_copy.txt' INTO TABLE empty_tbl
   FIELDS TERMINATED BY '|'
   LINES TERMINATED BY '\n';
  1. 此语句假定数据文件中的列使用与表相同的顺序。如果您需要设置不同的顺序,则可以按如下方式加载文件 −

mysql> LOAD DATA LOCAL INFILE 'products_copy.txt' INTO TABLE empty_tbl (c, b, a);

Using MYSQLIMPORT

mysqlimport 工具充当一个 LOAD DATA 封装器,允许从命令行执行相同的操作。

按如下方式加载数据 −

$ 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

Using MYSQLDUMP

使用 mysqldump 还原需要此简单语句将转储文件加载回主机 −

shell> mysql database_name < source_file.sql

SPECIAL CHARACTERS AND QUOTES

在 LOAD DATA 语句中,可能无法正确解释引号和特殊字符。该语句假定未加引号的值,并将反斜杠视为转义字符。使用 FIELDS 子句指定格式。用“ENCLOSED BY”指向引号,这会导致从数据值中剥离引号。用“ESCAPED BY”更改转义。