MySQL数据库备份与还原

数据库备份也叫SQL数据备份,备份的结果都是SQL指令。

在MySQL中专门提供了一个用于数据库备份的SQL客户端:mysqldump.exe(MySql document copy),sql备份是一种MySQL非常常见的备份与还原方式,SQL备份不只是备份数据,还备份对应的SQL指令(表结构),即便是数据库遭到了毁灭性的破坏(数据库被删除),那么利用SQL备份依然可以实现数据还原。

注意:

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

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

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

数据库备份基本语法:

mysqldump/mysqldump.exe -hPuP 数据库名称 【表1,表2.......】  >  备份文件地址

可以理解为:使用备份客户端   对   指定的用户中的       数据库、数据库表进行备份    到 指定的备份文件地址上。

备份可以有三种形式:

1.整库备份(只需要提供数据库的名字)

mysqldump  -hlocalhost -p3306 -uroot -p123456  school >  C:\Users\hasee\Desktop\数据库备份测试1

理解:为将root用户中的数据库school备份到C盘桌面上并且以(数据库备份测试1)这个作为文件名。

MySQL学习之备份 Mysql 第1张

2.单表备份

mysqldump  -hlocalhost -p3306 -uroot -p123456  school  my_date>  C:\Users\hasee\Desktop\数据库备份测试2.sql

MySQL学习之备份 Mysql 第2张

3.多表备份

mysqldump  -hlocalhost -p3306 -uroot -p123456  school my_date my_int>  C:\Users\hasee\Desktop\数据库备份测试3.sql

 MySQL学习之备份 Mysql 第3张

查看SQL备份文件中的具体内容:在前面我们说过数据库备份实际上就是一些SQL指令。

MySQL学习之备份 Mysql 第4张

数据还原 

MySQL提供了多种方法来实现数据的还原:两种

MySQLdump 备份的数据中没有关于数据库本身的操作,都是针对表级别的操作,当进行数据还原,

必须指定数据库。

1.利用mysql.exe客户端,在没有登录之前,可以直接用该客户端进行数据还原。

mysql.exe -hpup 数据库  <  文件位置

还原数据

mysql -uroot -p123456 school <  C:\Users\hasee\Desktop\数据库备份测试1 

可以理解为:将指定的备份文件 还原到 root用户的school数据库中。

MySQL学习之备份 Mysql 第5张

2.在SQL指令,提供了一种导入SQL指令的方式。

Source SQL文件位置;// 必须先进入到对应的数据库。

在这里可能出现文件导入问题

原因:

sql文件路径有中文或者空格(参考资料中路径名有空格)反斜杠。

解决方法:

将中文名字修改为英文

source C:/Users/hasee/Desktop/lixiaochi.sql;

MySQL学习之备份 Mysql 第6张

3.人为操作,打开备份文件,复制所有SQL指令,然后到MySQL.exe客户端中去粘贴执行。

直接复制粘贴,就可以了。

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄