数据备份yu还原;

数据备份yu还原

方式:

数据表备份

单表数据备份

SQL备份

增量备份

数据表备份

存储引擎:innodb、myisam

innodb:只有表结构,数据全部存储到 ibdata1 文件中(可以复制不能使用)

myisam:表、数据和索引全部单独分开存储(换任何地方都可以用)

-- 查看当前MYSQL版本

select @@version;

-- 创建myisam表

create table my_myisam(

id int

)charset utf8 engine=myisam;

在下面的路径查看创建的myisam表:

C:\ProgramData\MySQL\MySQL Server 5.7\Data\mydb

-- 向my_myisam表插入几条记录

insert into my_myisam values(1),(2),(3);

create database test charset utf8;

把在mydb数据库创建好的my_myisam3个复制到新创建的test数据库

单表数据备份

备份:

select */字段列表 into outfile 文件所在路径 from 数据源;

-- 单表数据备份

select * into outfile 'E:/Sublime Text 3/1910/web/student.txt' from my_student;

select * into outfile 'E:/Sublime Text 3/1910/web/class.txt' from my_class;

蓝色部分默认是tab键

高级备份:

select */字段列表 into outfile 文件所在路径 fields 字段处理 lines 行处理 from 数据源;

fields:字段处理,enclosed by(默认'')、terminated by(默认'\t')、escaped by(默认'\\')

lines:行处理,starting by(默认'')、terminated by(默认'\r\n')

-- 指定备份处理方式

select * into outfile

'E:/Sublime Text 3/1910/web/class1.txt'

-- 字段处理

fields

enclosed by '"' -- 数据使用双引号包裹

terminated by '|' -- 使用竖线分割字段数据

-- 行处理

lines

starting by 'START:'

from my_class;

数据还原:

load data infile 文件所在路径

into table 表名[(字段列表)]

fields 字段处理

lines 行处理;

-- 删除班级表数据

delete from my_class;

-- 还原数据

load data infile 'E:/Sublime Text 3/1910/web/class1.txt'

into table my_class

-- 字段处理

fields

enclosed by '"' -- 数据使用双引号包裹

terminated by '|' -- 使用竖线分割字段数据

-- 行处理

lines

starting by 'START:';

SQL备份

备份:mysqldump.exe

适用于中小项目

mysqldump/mysqldump.exe -hPup 数据库名字 [数据表名字1 [数据表名字2...]] > 外部文件路径

整库备份:

mysqldump/mysqldump.exe -hPup 数据库名字 > 外部文件路径

SQL还原数据(只管最后结果)

方案一:使用mysql.exe客户端还原

不带分号;的要\q退出在执行,不能换行

mysql.exe/mysql -hPup 数据库名字 < 备份文件目录

方案二:使用SQL指令还原

source 备份文件所在路径

增量备份

备份的是系统日志(保存数据的增删改查所有操作记录)文件(指定时间段备份)

不会重复,节省时间,不浪费磁盘空间

周期长,(适用于大项目),数据精确度高

你可能感兴趣的:(数据备份yu还原;)