数据备份与还原,具体如下
文本备份:
文本备份是最简单的,就是将数据表的相关文件复制一份就行了
注意:
文本备份一般认为只适合Myisam存储引擎创建的表!因为Myisam数据表的三种数据是分开存储的,而且表与表的数据也是单独存储的!
缺点:
每次都需要备份整个文件,非常浪费磁盘空间!
数据备份:
所谓的数据备份,就是只备份表的数据部分,不备份表结构,也就是说,如果整张表的数据被误删了(delete语句),还的可以还原的!(因为表的结构还在),但是,如果把整个表之间drop掉了,就无法还原了!因为表的结构已经没有了!
备份语法:
select *|字段列表 into outfile 文件地址 from 表名;
select *|字段列表 into outfile 文件地址 from 表名;
select *|字段列表 into outfile 文件地址 from 表名;
还原语法:
load data infile 文件地址 into table 表名[字段列表];
load data infile 文件地址 into table 表名[字段列表];
load data infile 文件地址 into table 表名[字段列表];
一个小技巧:
我们可以利用还原语法快速的将外面的数据导入数据表中!但是外部数据的格式首先要整理一下:数据项与数据项之间以制表符作为分隔符!
sql备份(推荐使用):
就是将表的结构和数据通过sql语句的形式进行备份!与数据备份最大的区别是:不仅仅备份数据表的数据部分,也备份数据表的结构部分,也就说,即使数据表被drop掉了,也能还原!
备份语法:
mysqldump -h主机号 -P端口号 -u用户名 -p密码 数据库名[数据表1 数据表2 ……] > 存储路径
mysqldump -h主机号 -P端口号 -u用户名 -p密码 数据库名[数据表1 数据表2 ……] > 存储路径
mysqldump -h主机号 -P端口号 -u用户名 -p密码 数据库名[数据表1 数据表2 ……] > 存储路径
还原语法:
方法一:
使用mysql客户端进行还原
mysql -hPup 数据库名 < 备份路径
方法二:
使用sql命令
source 备份路径; — 注意这里的路径不能有引号