【数据库复习笔记】1.数据库的备份,还原与回滚

注意:本文部分转载!!

MySQL数据库的备份

在数据库外:(在cmd中)
>mysqldump -uroot -p123456 test > D:\tt.sql
导出数据库中的表结构及表中的数据。不包含该数据库。用户名为root,密码为123456,中间没有空格,不是手误!!

MySQL数据库的还原

还原此种方式备份的数据时,必须在该数据库服务器中创建一个数据库,并指定将该数据备份文件拷贝到该数据库中。
第一种,在数据库外。(在cmd中)
>mysql -uroot –p123 test< d:\tt.sql
第二种,进入数据库,use hao后
mysql>source d:\tt.sql;
Set sql_safe_updates=0;

MySQL数据库的回滚

转自nanjoyoshino的博客:mysql 回滚,撤销操作,恢复数据
在mysql有时执行了错误的update或者delete时导致大量数据错误恢复的办法。执行时没有开启事务,也没有对数据进行。这时就需要使用到sqlbinlog工具。

sqlbinlog需要开启,具体的打开方法就不说了。

使用sqlbinlog会产生bin文件,恢复就需要用到这些文件。文件中记录着数据库的所有操作。(此方法的操作是将数据库之前所执行的语句重新执行一次,以达到恢复效果)

具体步骤:1,先找到bin文件,一般都是在mysql的data文件夹中,结尾以.00000X等形式结束。

2,寻找需要还原的时间点 使用语句 mysqlbinlog 文件名 例(MySQLbinlog xxbin.000001)来查看内容,然后找到对应的具体时间

3,导出sql语句,使用语句 mysqlbinlog 文件名>sql文件路径 例(mysqlbinlog xxxbin,00001>>a.sql | mysql -u root -p )

如果需要指定时间导出–start–date -stop=’’ --date=’’ 来导出指定时间执行的语句例(sqlbinlog --start-stop=‘2015-11-22 10:00:00’ xxbin.000001>a.sql | mysql -u root -p )这句意思是导出在2015-11-22 10点之前的语句,反之start是导出时间之后的。 start和stop可以同时使用。

如果存在多个bin文件,则按照需要导出。

4,使用mysql将导出的语句执行一次。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值