Mysql完全备份和恢复

  

Mysql完全备份和恢复

  

实验介绍

  

数据库备份从物理与逻辑的角度划分可以分为:物理备份,逻辑备份。从数据库的备份策略角度,可以分为完全备份,差异备份,增量备份。这次实验主要介绍完全备份,完全备份优点是备份与恢复操作简单方便,缺点是数据存在大量的重复,占用大量的备份空间,备份时间长。

  

Mysql完全备份

  

1,使用焦油打包文件夹备份

  

Mysql的数据库文件默认都是保存在安装目录下的数据文件夹下面,可以直接保存数据文件夹。但是占用的空间很大,可以使用焦油打包压缩进行保存。由于数据库文件很大,可以直接使用压缩率较大的xz格式压缩,所以首先要安装xz压缩格式工具。

  
 <代码> [root@localhost选择]# yum安装xz - y  
  

然后,对数据库文件夹/usr/地方/mysql/数据/进行打包操作。注意这里使用焦油工具打包,最好使用相对路径,所以先切换至/usr/地方/mysql目录下,然后再打包。

  
 <代码> # cd/usr/local/mysql/root@localhost选择
  (root@localhost mysql) #沥青Jcf/opt/mysql -美元(日期+ % F) . tar。xz数据/root@localhost选择# ls
  mysql - 2018 - 07 - 02. -焦油。xz mysql-5.7.17 test.sql  
  

2,使用,mysqldump工具备份

  

(1)使用,mysqldump命令对某些表完全备份,如下图、数据库中有测试的库,里面有一张yx的表。

  
 <代码> mysql>显示表;
  +----------------+
  | Tables_in_test |
  +----------------+
  | yx |
  +----------------+
  1行集(0.00秒)
  
  mysql>显示数据库;
  +--------------------+
  | |数据库
  +--------------------+
  | information_schema |
  mysql | |
  | performance_schema |
  | sys |
  测试| |
  +--------------------+
  5行集(0.00秒) 
  

对测试库中的yx表进行备份。

  
 <代码> [root@localhost选择]#,mysqldump yx - u root - p测试比;/opt/yx1.sql
  输入密码:
  root@localhost选择# ls
  mysql - 2018 - 07 - 02. -焦油。xz mysql-5.7.17测试。sql yx1.sql  
  

(2)使用,mysqldump命令对单个库进行完全备份

  
 <代码> [root@localhost选择]#,mysqldump - u root - p测试比;/opt/test.sql
  输入密码:
  root@localhost选择# ls
  mysql - 2018 - 07 - 02. -焦油。xz mysql-5.7.17测试。sql yx1.sql  
  

(3)使用,mysqldump命令对多个库进行完全备份

  
 <代码> [root@localhost选择]#,mysqldump - u root - p - mysql数据库测试比;/opt/test-mysql.sql
  输入密码:
  root@localhost选择# ls
  mysql - 2018 - 07 - 02. -焦油。xz mysql-5.7.17测试mysql。sql检验。sql yx1.sql  
  

(4)使用,mysqldump命令对所有数据库完全备份

  
 <代码> [root@localhost选择]#,mysqldump - u root - p——所有数据库比;/opt/all.sql
  输入密码:
  root@localhost选择# ls
  所有人。sql mysql - 2018 - 07 - 02. -焦油。xz mysql-5.7.17测试mysql。sql检验。sql yx1.sql  
  

(5)使用,mysqldump命令直接备份表结构

  
 <代码> [root@localhost选择]#,mysqldump yx - u root - p - d测试比;/opt/desc.sql
  输入密码:
  root@localhost选择# ls
  所有人。sql desc.sql mysql - 2018 - 07 - 02. -焦油。xz mysql-5.7.17测试mysql。sql检验。sql yx1.sql  
  

Mysql完全恢复

  

在需要恢复库的时候,可以使用源命令和mysql命令

  

1,源命令整库恢复

  

上面我们已经对测试库进行了备份,现在我们删除掉测试库,注意在恢复库的时候,要先创建一个同名的库,然后再恢复,否则会报错。

  
 <代码> mysql>显示数据库;
  +--------------------+
  | |数据库
  +--------------------+
  | information_schema |
  mysql | |
  | performance_schema |
  | sys |
  测试| |
  +--------------------+
  5行集(0.00秒)
  
  mysql>减少数据库测试;
  查询好了,1行影响(0.01秒)
  
  mysql>显示数据库;
  +--------------------+
  | |数据库
  +--------------------+
  | information_schema |
  mysql | |
  | performance_schema |
  | sys |
  +--------------------+
  mysql>创建数据库测试;
  查询好了,1行影响(0.00秒)
  mysql>使用测试;
  数据库修改
  mysql>显示表;
  空集(0.00秒)
  
  mysql>使用测试;
  数据库修改
  mysql>/opt/test.sql来源
  
  mysql>显示表;
  +----------------+
  | Tables_in_test |
  +----------------+
  | yx |
  +----------------+
  1行集(0.00秒)

Mysql完全备份和恢复