MySQL(四)数据备份与还原
数据备份与还原:
备份:将当前已有的数据或者记录保留
还原:将已经保留的数据恢复到对应的表中
为什么要做备份还原:
1、防止数据丢失:被盗、误操作
2、保护数据的记录
数据备份还原的方式很多:数据表备份、单表数据备份、SQL备份、增量备份
一、数据表备份:(不推荐使用)
不需要通过SQL来备份,直接进入到数据库文件夹复制对应的表结构以及数据文件,以后还原的时候,直接将备份的内容放进去即可。(这种文件备份通常适用于myisam存储引擎:直接三个文件就可以了,innodb不行,识别不了。)
有前提条件:根据不同的存储引擎有不同的区别;
存储引擎:mysql进行数据的存储方式:主要有两种:innodb和myisam(因为这两种免费)
对比myisam和innodb:数据存储方式
innodb:只有表结构,数据全部存储到ibdata1文件中。
myisam:表、数据和索引全部单独分开存储。(证明如下图)
二、单表数据备份
每次只能备份一张表,只能备份数据(表结构不可以备份)
通常使用,将表中的数据进行导出文件。
备份:
从表中选出一部分数据保存到外部文件中。
select */字段列表 into outfile 文件所在路径 from 数据源; 前提:外部文件不存在
高级备份:自己自定字段和行的处理方式
select */字段列表 into outfile 文件所在路径 fields 字段处理 lines 行处理 from 数据源; 前提:外部文件不存在
fields:字段处理
Enclosed by:字段使用什么内容包裹,默认是:空字符串
Terminated by:字段以什么结束,默认是“\t”,tab键
escaped by:特殊符号用什么方式处理,默认是“\\”,使用反斜杠转义
lines:行处理
starting by:每行以什么开始,默认是空字符串;
terminated by:每行以什么结束,默认是“\r\n”,换行符
三、数据的还原
将一个在外部保存的数据重新恢复到表中(如果表结构不存在,那么就恢复不了了)
load data infile 文件所在路径 into table 表名【(字段列表)】 fields 字段处理 lines 行处理 ——怎么备份,怎么还原。
四、SQL备份
备份的SQL语句:系统会对表结构以及数据进行处理,变成对应的SQL语句,然后进行备份,还原的时候只要执行SQL指令即可(主要就是针对表结构)
备份:mysql没有提供备份指令,但是可以利用mysql提供的软件:mysqldump.exe
mysqldump.exe也是一种客户端,需要操作服务器,必须连接认证
1、单表备份:
mysqldump/mysqldump.exe-hPup 数据库名字 【数据表名字 1【数据表名字2……】】>外部文件目录(建议使用.sql)
2、整库备份
mysqldump/mysqldump.exe-hPup 数据库名字 >外部文件目录(建议使用.sql)
五、SQL还原数据
优缺点:
优点:可以备份结构
缺点:会浪费空间,会额外的增加SQL指令。
1、使用mysql.exe 客户端还原
mysql.exe/mysql-hPup 数据库名字 < 备份文件目录
2、使用SQL指令还原
source 备份文件所在路径
六、增量备份(大的项目一般会用增量备份)
不是针对数据或者SQL指令进行备份:是针对mysql服务器的日志进行备份
增量备份:是指定时间段进行备份,备份数据不会重复,而且所有的操作都会备份。
MySQL(四)数据备份与还原的更多相关文章
- mysql之数据备份与还原
mysql数据备份 #1. 物理备份: 直接复制数据库文件,适用于大型数据库环境.但不能恢复到异构系统中如Windows. #2. 逻辑备份: 备份的是建表.建库.插入等操作所执行SQL语句,适用于中 ...
- 关系型数据库MySQL(四)_备份与还原
数据库备份 备份命令:mysqldump 备份一个数据库 mysqldump -h localhost -u username -p password database_name > D:\fi ...
- MySql笔记之数据备份与还原
MySQL数据备份.还原与迁移 一.数据备份------mysqldump 1.语法: mysqldump -u user(用户名)-h host(登录用户的主机名称)-p password(登录密码 ...
- day 50 MySQL数据备份与还原(mysqldump)
MySQL数据备份与还原(mysqldump) 一 mysqldump指令实现数据备份.mysql指令实现数据还原 经常有朋友问我,DBA到底是做什么的,百科上说:数据库管理员(Databas ...
- 转 MySQL 数据备份与还原
MySQL 数据备份与还原 原贴:http://www.cnblogs.com/kissdodog/p/4174421.html 一.数据备份 1.使用mysqldump命令备份 mysqldum ...
- MYSQL数据备份与还原学习笔记
数据备份与还原 1.mysqldump 1.1 文件地址: E:\xampp\mysql\bin 文件名:mysqldump.exe CMD下进入mysqldump.exe cd E:\xampp ...
- MySQL 数据备份与还原的示例代码
MySQL 数据备份与还原的示例代码 这篇文章主要介绍了MySQL 数据备份与还原的相关知识,本文通过示例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下 一.数据备份 1.使用 ...
- MySQL 数据备份与还原 转载
MySQL 数据备份与还原 一.数据备份 1.使用mysqldump命令备份 mysqldump命令将数据库中的数据备份成一个文本文件.表的结构和表中的数据将存储在生成的文本文件中. mysqldum ...
- mysql数据库的备份和还原的总结
mysql数据库的备份和还原的总结 (来自一运维同事的总结) 1. 备份方式: 热备:数据库在线进行备份,不影响读和写的在线备份方式! 温备:数据库在线进行备份,对表备份时先锁定写操作,仅可以执行读操 ...
随机推荐
- STM32内存受限情况下摄像头驱动方式与图像裁剪的选择
1.STM32图像接收接口 使用stm32芯片,128kB RAM,512kB Rom,资源有限,接摄像头采集图像,这种情况下,内存利用制约程序设计. STM32使用DCMI接口读取摄像头,协议如下. ...
- eclipse在debug模式下鼠标移动到变量上不显示值的问题
在eclipse中调试时,鼠标移动到变量上不显示值,使用ctrl+shift+i,或者通过配置达到目的: Window->Preferences->Java->Editor-> ...
- jQuery制作div板块拖动层排序
html结构: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www ...
- node 模块正确暴露方法
一个node模块,为了能够服用,就需要将其暴露,那么如何正确写呢?(参考:https://developer.mozilla.org/zh-CN/docs/Learn/Server-side/Expr ...
- "Celsius=5/9*(Fahrenheit-32)" and "Celsius=5*(Fahrenheit-32)/9 "
The reason for multiplying by 5 and dividing by 9 instead of just multiplying by 5/9 is that in C, a ...
- css中input与button在一行高度不一致的解决方法
在写html表单的时候,发现了一个问题:input和button设置了一样的宽高,但是显示高度确不一致,先看代码: <style> input,button{ width:100px; h ...
- 在具体的前端工作中通常HTML页面乱码怎么解决?
HTML文件乱码一般是因为编码格式不匹配造成的,比如:不同编码内容混杂.浏览器不能自动检测网页编码等等:但无论是哪种情况造成乱码,在HTML文件头中设置网页编码,匹配好编码格式就可. 下面是一个中文乱 ...
- 前端同学经常忽视的一个 JavaScript 面试题
题目 function Foo() { getName = function () { alert (1); }; return this; } Foo.getName = funct ...
- [SpringBoot]SpringBoot中使用redis事务
本文基于SpringBoot 2.X 事务在关系型数据库的开发中经常用到,其实非关系型数据库,比如redis也有对事务的支持,本文主要探讨在SpringBoot中如何使用redis事务. 事务的相关介 ...
- day54 作业
编写代码,将当前日期按"2017-12-27 11:11 星期三"格式输出(提示:switch结构) var date = new Date() ymd = data.toLoca ...