mysql22-整库数据备份与还原

整库数据备份与还原

整库数据备份也叫SQL数据备份:备份的结果都是SQL指令

在mysql中提供了一个专门用于备份sql的客户端:mysqldump.exe

应用场景

SQL备份是一种mysql非常常见的备份与还原方式,SQL备份不只是备份数据,还备份对应的SQL指令(包含数据与表结构):即便是数据库遭到毁灭性的破坏(数据库被删),那么利用sql备份依然可以实现数据还原

sql备份因为需要备份结构,因此产生的备份文件特别大,因此不适合特大型数据备份,也不适合数据变化频繁型数据库备份

应用方案

SQL备份

sql备份用到的是专门的备份客户端,因此还没与数据库服务器进行连接

基本语法

mysqldump/mysqldump.exe -hPup 数据库名字【表1 【表2。。。】】 >备份文件地址
注:

  • 此时在windowsCMD环境下,而不是在sql,所以不需要语法的分号。
  • -h,-P可省略

备份可以有三种方式

  1. 整库备份(只需要提供数据库名字)
  2. 单表备份:数据库后面跟一张表
  3. 多表备份:数据库后跟多张表

查看备份的成果

查看备份文件中的具体内容

数据还原

mysql提供了多种方式来实现:两种
mysqldump备份的数据中没有关于数据库本身的操作,都是针对表级别的擦欧总:当进行数据(sql还原),必须指定数据库

利用mysql.exe客户端

  1. 利用mysql.exe客户端:没有登录之前,可以直接用改客户端进行数据还原
    mysql.exe-hPup数据库 <文件位置

    导入SQL指令

  2. 在sql指令,提供了一种导入SQL指令的方式
    source SQL 文件位置; //必须先进入对应的数据库

  3. 人为操作:打开备份文件,复制所以SQL指令,然后到mysql.exe客户端中粘贴执行(不推荐)类似第二种

本机动手操作:

D:\php\PHPTutorial\MySQL\binmysqldump.exe -uroot -proot mydatabase >C:\Users\华\Desktop\my\mydatabase.sql//CMD命令备份



drop database mydatabase;//sql指令删除了数据库mydatabase



开始还原:

create database mydatabase; //sql指令先创建数据库


D:\php\PHPTutorial\MySQL\bin\mysql.exe -uroot -proot mydatabase < C:\Users\华\Desktop\my\mydatabase.sql //cmd命令行下还原

还原成功