数据备份与还原第二篇,具体如下
基础概念:
备份,将当前已有的数据或记录另存一份;
还原,将数据恢复到备份时的状态。
为什么要进行数据的备份与还原?
防止数据丢失;保护数据记录。
数据备份与还原的方式有很多种,具体可以分为:数据表备份、单表数据备份、SQL备份和增量备份。
单表数据备份
单表数据备份,每次只能备份一张表,而且只能备份数据,不能备份表结构。
通常的使用场景为:将表中的数据导出到文件。
备份方法:从表中选出一部分数据保存到外部的文件中,
select */字段列表 + into outfile + '文件存储路径' + from 数据源;
在这里,使用单表数据备份有一个前提,那就是:导出的外部文件不存在,即文件存储路径下的文件不存在。
执行如下 SQL 语句,进行测试:
-- 单表数据备份 select * into outfile 'D:/CoderLife/testMySQL/class.txt' from class;
如上图所示,SQL 语句已经执行成功。在这里,如果我们遇到:
ERROR 1290 (HY000): The MySQL server is running with the –secure-file-priv option so it cannot execute this statement.
这个错误,可以通过查看「详述 MySQL 导出数据遇到 secure-file-priv 的问题」进行解决。
为了验证是否真的将class表中的数据导出到指定位置,我们可以到该路径下进行确认:
如上图所示,显然我们已经将class表中的数据导出到本地啦!不过在这里,有一点需要我们特别注意,那就是:对于从数据库导出的文件,我们最好用EditPlus等编辑工具打开,防止乱码。
此外,对于上述用于导出表中数据的 SQL 语法,其实我们可以颠倒书写顺序,也没有问题,例如:
select */字段列表 + from 数据源 + into outfile + '文件存储路径';
执行如下 SQL 语句,进行测试:
-- 单表数据备份 select * from class into outfile 'D:/CoderLife/testMySQL/class2.txt';
接下来,我们学习一些用于单表数据备份的高级操作,即自己指定字段和行的处理方式。
基本语法:select */字段列表 + into outfile + '文件存储路径' + fields + 字段处理 + lines + 行处理 + from 数据源;
字段处理:
enclosed by:指定字段用什么内容包裹,默认是,空字符串;
terminated by:指定字段以什么结束,默认是\t,Tab键;
escaped by:指定特殊符号用什么方式处理,默认是\\,反斜线转义。
行处理:
starting by:指定每行以什么开始,默认是,空字符串;
terminated by:指定每行以什么结束,默认是\r\n,换行符。
执行如下 SQL 语句,进行测试:
-- 指定单表数据备份处理方式 select * into outfile 'D:/CoderLife/testMySQL/class3.txt' -- 字段处理 fields enclosed by '"' terminated by '|' lines starting by 'START:' from class ;
如上图所示,显然导出文件class3.txt按照我们指定的格式进行输出啦!在前面,我们已经测试了各种单表数据备份的方式,现在我们删除数据,并尝试还原数据,即将保持在外部的数据重新恢复到数据表中。But,由于单表数据备份进能备份数据,因此如果表结构不存在,则不能进行还原。
基本语法:load data infile + '文件存储路径' + into table + 表名 + [字段列表] + fields + 字段处理 + lines + 行处理;
执行如下 SQL 语句,进行测试:
-- 删除表 class 中的数据 delete from class; -- 查看表 class 中的数据 select * from class; -- 还原表 class 中的数据 load data infile 'D:/CoderLife/testMySQL/class3.txt' into table class -- 字段处理 fields enclosed by '"' terminated by '|' lines starting by 'START:'; -- 查看表 class 中的数据 select * from class;
如上图所示,显然在我们删除表class中的数据之后,还原数据成功。
温馨提示:符号[]括起来的内容,表示可选项;符号+,则表示连接的意思。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。
本文向大家介绍php简单备份与还原MySql的方法,包括了php简单备份与还原MySql的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了php简单备份与还原MySql的方法。分享给大家供大家参考,具体如下: 一、备份: 二、还原 更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP基于pdo操作数据库技巧总结》、《PHP+MongoDB数据库操作技巧大全》、《php面向对象程序
本文向大家介绍简单的MySQL备份与还原方法分享,包括了简单的MySQL备份与还原方法分享的使用技巧和注意事项,需要的朋友参考一下 为了安全起见,需要经常对数据库作备份,或者还原。对于 MySQL 而言,最方便的方法可能就是用 phpMyAdmin 的导出、导入功能了,但如果你的数据库体积比较大,作为 Web 应用的 phpMyAdmin 可能会遭遇“超时”而操作失败。所以,学会在命令行模式下备份
本文向大家介绍xtrabackup备份还原MySQL数据库,包括了xtrabackup备份还原MySQL数据库的使用技巧和注意事项,需要的朋友参考一下 mysqldump 备份鉴于其自身的某些特性(锁表,本质上备份出来insert脚本或者文本,不支持差异备份),不太适合对实时性要求比较高的情况 Xtrabackup可以解决mysqldump存在的上述的一些问题,生产环境应用的也会更多一些。 本文简
本文向大家介绍MySQL中使用innobackupex、xtrabackup进行大数据的备份和还原教程,包括了MySQL中使用innobackupex、xtrabackup进行大数据的备份和还原教程的使用技巧和注意事项,需要的朋友参考一下 大数据量备份与还原,始终是个难点。当MYSQL超10G,用mysqldump来导出就比较慢了。在这里推荐xtrabackup,这个工具比mysqldump要快很
本文向大家介绍sql server 2000数据库备份还原的图文教程,包括了sql server 2000数据库备份还原的图文教程的使用技巧和注意事项,需要的朋友参考一下 MSSQL是微软公司的一款数据库管理系统,本文将详细介绍MSSQL2000中数据库的备份和还原功能。 1、首先请保证您的备份文件是bak文件,并且备份文件能够正常还原。 2、打开“企业管理器”→“数据库”,选择您要还原的数据库,
本文向大家介绍sql server 2005数据库备份还原图文教程,包括了sql server 2005数据库备份还原图文教程的使用技巧和注意事项,需要的朋友参考一下 首先、点击桌面的“SQL Server Management Studio”打开,sql2005的管理器,点击“连接”登录,如图: 一、新建数据库 1、新建数据库 右键点击“数据库”——“新建数据库”,如图: MSSQL2005备份