数据备份与还原:

  备份:将当前已有的数据或者记录保留

  还原:将已经保留的数据恢复到对应的表中

  为什么要做备份还原:

    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(四)数据备份与还原的更多相关文章

  1. mysql之数据备份与还原

    mysql数据备份 #1. 物理备份: 直接复制数据库文件,适用于大型数据库环境.但不能恢复到异构系统中如Windows. #2. 逻辑备份: 备份的是建表.建库.插入等操作所执行SQL语句,适用于中 ...

  2. 关系型数据库MySQL(四)_备份与还原

    数据库备份 备份命令:mysqldump 备份一个数据库 mysqldump -h localhost -u username -p password database_name > D:\fi ...

  3. MySql笔记之数据备份与还原

    MySQL数据备份.还原与迁移 一.数据备份------mysqldump 1.语法: mysqldump -u user(用户名)-h host(登录用户的主机名称)-p password(登录密码 ...

  4. day 50 MySQL数据备份与还原(mysqldump)

      MySQL数据备份与还原(mysqldump)   一 mysqldump指令实现数据备份.mysql指令实现数据还原 经常有朋友问我,DBA到底是做什么的,百科上说:数据库管理员(Databas ...

  5. 转 MySQL 数据备份与还原

    MySQL 数据备份与还原 原贴:http://www.cnblogs.com/kissdodog/p/4174421.html   一.数据备份 1.使用mysqldump命令备份 mysqldum ...

  6. MYSQL数据备份与还原学习笔记

    数据备份与还原   1.mysqldump 1.1 文件地址: E:\xampp\mysql\bin 文件名:mysqldump.exe CMD下进入mysqldump.exe cd E:\xampp ...

  7. MySQL 数据备份与还原的示例代码

    MySQL 数据备份与还原的示例代码 这篇文章主要介绍了MySQL 数据备份与还原的相关知识,本文通过示例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下 一.数据备份 1.使用 ...

  8. MySQL 数据备份与还原 转载

    MySQL 数据备份与还原 一.数据备份 1.使用mysqldump命令备份 mysqldump命令将数据库中的数据备份成一个文本文件.表的结构和表中的数据将存储在生成的文本文件中. mysqldum ...

  9. mysql数据库的备份和还原的总结

    mysql数据库的备份和还原的总结 (来自一运维同事的总结) 1. 备份方式: 热备:数据库在线进行备份,不影响读和写的在线备份方式! 温备:数据库在线进行备份,对表备份时先锁定写操作,仅可以执行读操 ...

随机推荐

  1. Python 偏函数用法全方位解析

    Python的functools模块中有一种函数叫“偏函数”,自从接触它以来,发现确实是一个很有用且简单的函数,相信你看完这篇文章,你也有相见恨晚的感觉. 我们都知道,函数入参可以设置默认值来简化函数 ...

  2. 关于SPSS Modeler18 提示:用于定义的观测值的字段的值无效

    今天在做实验的时候,按照实验步骤严格设置了参数,当运行节点的时候,一直提示:用于定义的观测值的字段的值无效,如下图 我把我的流文件发给同学,同学的机器上是可以运行的,但是我的不行,不知道什么原因,有知 ...

  3. Python实用笔记 (8)高级特性——迭代

    如果给定一个list或tuple,我们可以通过for循环来遍历这个list或tuple,这种遍历我们称为迭代(Iteration). 比如dict就可以迭代: >>> d = {'a ...

  4. Python之浅谈绑定方法

    目录 绑定方法和非绑定方法 绑定方法 对象的绑定方法 类的绑定方法 非绑定方法 总结 绑定方法和非绑定方法 类中定义的方法大致可以分为两类:绑定方法和非绑定方法.其中绑定方法又可以分为绑定到对象的方法 ...

  5. Sightseeing,题解

    题目: 题意: 找到从s到t与最短路长度相差少于1的路径总数. 分析: 首先,搞明白题意之后,我们来考虑一下怎么处理这个1,怎样找相差为1的路径呢?我们这样想,如果有相差为1的路径,那么它将会是严格的 ...

  6. Python——数据库like模糊查询

    在Python中%是一个格式化字符,所以如果需要使用%则需要写成%%.将在Python中执行的sql语句改为:sql = "SELECT * FROM table_test WHERE va ...

  7. Tomcat更改错误页面指向,改变404,500错误页面

    在公司工作了一段时间,也被安排做了一个App,而且后台也是我来写和布置的,由于一次安全检查,需要我把tomcat默认页(管理页面)关闭,于是我只能进行默认指向变更,但是后面我又想到要是用户输入不存在的 ...

  8. JVM 专题九:运行时数据区(四)本地方法栈

    1. 本地方法栈 2. 什么是本地方法栈? Java虚拟机栈用于管理Java方法的调用,而本地方法栈用于管理本地方法的调用   本地方法栈,也是线程私有的. 允许被实现成固定或者是可动态拓展的内存大小 ...

  9. java 面向对象(二十一):属性的赋值顺序

    * ①默认初始化 * ②显式初始化/⑤在代码块中赋值 * ③构造器中初始化 * ④有了对象以后,可以通过"对象.属性"或"对象.方法"的方式,进行赋值 * * ...

  10. keras 文本序列的相关api

    1.word_tokenizer = Tokenizer(MAX_WORD_NUMS)    MAX_WORD_NUMS设置词典的最大值,为一个int型数值 2.word_tokenizer.fit_ ...