Mysql数据库的备份

这里写图片描述

我们先创建一个数据库作为测试的数据库及里面的内容如下:

mysql> create database thursday;
Query OK, 1 row affected (0.00 sec)

mysql> use thursday;
Database changed
mysql> show tables;
Empty set (0.00 sec)

mysql> create table first(id int primary key auto_increment,name varchar(50),age
 int );
Query OK, 0 rows affected (0.23 sec)

mysql> insert into first(name,age) values("张三",18);
Query OK, 1 row affected (0.17 sec)

数据库(database)的备份相关内容:

一、通过命令实现数据库的还原备份(mysqldump)

(1)mysqldump备份:

mysqldump -uroot -p thursday > c:/backup/a.sql

(2)还原备份:

mysql -uroot -p thursday < c:/backup/a.sql

二、备份具体的莫一张表(table)是怎么备份的?

(1)备份:

mysqldump -uroot -p thursday first second >c:/backup/b.sql

(2)还原

source c:/backup/b.sql
注意:表的还原要在数据库的下面进行。

三、同时备份多个数据库(databases)怎么操作?

备份:

mysqldump -uroot -p –databases thursday test > c:/backup/c.sql

还原:

source c:/backup/c.sql

四、同时备份所有的数据库

mysqldump -uroot -p -A > c:/backup/myAllDatabase.sql

或者:

mysqldump -uroot -p –all-databases >c:/backup/myAllDatabase.sql

五、用select方式备份:

(1) 备份

select * from first into outfile c:/backup/data1.sql;

(2)还原

load data infile “c:/backup/data1.sql”;

六、增点备份(回到过去)

赠点备份是我们在操作数据库中如果有失误的操作,可以回到过去,相当于拯救数据的一个过程,较为重要。

(1) 在my.ini文件中配置

在【mysqld】下面配置 log-bin=c:/backup/point.log

这里写图片描述

(2)修改完成配置文件后,在cmd窗口中重新启动mysql,把配置文件的信息录入进去。

这里写图片描述

(3)在c:/backup文件夹下面我们会发现系统自动生成的两个文件夹如下:

这里写图片描述

(4)在mysql数据库中删除掉second表作为后续找回模拟使用。

mysql> use thursday;
Database changed
mysql> show tables;
+--------------------+
| Tables_in_thursday |
+--------------------+
| first              |
| second             |
+--------------------+
2 rows in set (0.00 sec)

mysql> drop table second;
Query OK, 0 rows affected (0.18 sec)

(4)查看.000001文件

输入命令:
mysqlbinlog c:/backup/point.000001

这里写图片描述

(5)从.000001文件中可以看到我们实现操作的时间及增点,如上图的2和3,可以通过时间或者增点回到过去对于数据库操作的时间点。实现数据的恢复。

mysqlbinlog –stop-datetime = “2017-05-25 22:13:18” c:/backup/point00001|mysql -uroot -p

或者根据增点进行数据恢复,回到过去

mysqlbinlog –stop-pos=219 c:/backup/point.000001|mysql -uroot -p

这里写图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值