位置:首页 > SQL > MySQL数据库恢复方法:LOAD DATA导入数据详解

MySQL数据库恢复方法:LOAD DATA导入数据详解

时间:2026-08-16  |  作者:冻月看渠  |  阅读:0

数据库恢复,说白了,就是围绕备份展开的一整套系统维护与管理操作。

执行恢复前的检查

在真正执行恢复之前,系统通常不会直接开始,而是会先做一轮安全检查。

  • 要恢复的数据库是否已经存在

  • 数据库当前状态有没有发生变化

  • 相关数据库文件彼此之间是否兼容

这些内容都会先核实清楚。完成检查之后,再根据实际采用的备份类型,选择对应的恢复方式。

数据库恢复机制的核心

数据库恢复机制的设计,关键其实集中在两件事上:

  • 其一,怎样建立冗余数据

  • 其二,怎样利用这些冗余数据把数据库恢复回来

建立冗余数据的常见方式

说到建立冗余数据,最常见的两项技术就是数据转储登录日志文件

在实际的数据库系统里,这两种方法通常是配合使用的,而不是彼此替代。

所谓数据转储,就是 DBA 按固定周期把整个数据库复制一份,保存到磁带或者另一块磁盘上。

保存下来的这些备用版本,通常就叫后备副本或后援副本。

使用 LOAD DATA...INFILE 恢复备份数据

恢复之前备份的数据时,可以使用 LOAD DATA…INFILE 语句。

实例说明

将之前导出的数据备份文件 file.txt 导入数据库 test_db 的表 tb_students_copy 中。

其中,tb_students_copy 的表结构和 tb_students_info 相同。

首先创建表 tb_students_copy,输入的 SQL 语句和执行结果如下所示。

mysql> CREATE TABLE tb_students_copy
    -> LIKE tb_students_info;
Query OK, 0 rows affected (0.52 sec)
mysql> SELECT * FROM tb_students_copy;
Empty set (0.00 sec)

导入数据与查询表 tb_students_copy 的过程如下所示。

mysql> LOAD DATA INFILE 'C:/ProgramData/MySQL/MySQL Server 5.7/
Uploads/file.txt'
    -> INTO TABLE test_db.tb_students_copy
    -> FIELDS TERMINATED BY ','
    -> OPTIONALLY ENCLOSED BY '"'
    -> LINES TERMINATED BY '?';
Query OK, 10 rows affected (0.14 sec)
Records: 10  Deleted: 0  Skipped: 0  Warnings: 0
mysql> SELECT * FROM test_db.tb_students_copy;
+----+--------+---------+------+------+--------+------------+
| id | name   | dept_id | age  | sex  | height | login_date |
+----+--------+---------+------+------+--------+------------+
|  1 | Dany   |       1 |   25 | F    |    160 | 2015-09-10 |
|  2 | Green  |       3 |   23 | F    |    158 | 2016-10-22 |
|  3 | Henry  |       2 |   23 | M    |    185 | 2015-05-31 |
|  4 | Jane   |       1 |   22 | F    |    162 | 2016-12-20 |
|  5 | Jim    |       1 |   24 | M    |    175 | 2016-01-15 |
|  6 | John   |       2 |   21 | M    |    172 | 2015-11-11 |
|  7 | Lily   |       6 |   22 | F    |    165 | 2016-02-26 |
|  8 | Susan  |       4 |   23 | F    |    170 | 2015-10-01 |
|  9 | Thomas |       3 |   22 | M    |    178 | 2016-06-07 |
| 10 | Tom    |       4 |   23 | M    |    165 | 2016-08-05 |
+----+--------+---------+------+------+--------+------------+
10 rows in set (0.00 sec)

MySQL数据库恢复(LOAD DATA)

免责声明:文中图文均来自网络,如有侵权请联系删除,心愿游戏发布此文仅为传递信息,不代表心愿游戏认同其观点或证实其描述。

相关文章

更多

精选合集

更多

大家都在玩

热门话题

大家都在看

更多