1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > mysql设置停止二进制文件的操作_window下使用二进制文件对mysql数据库备份及恢复(再现

mysql设置停止二进制文件的操作_window下使用二进制文件对mysql数据库备份及恢复(再现

时间:2020-01-25 18:23:59

相关推荐

mysql设置停止二进制文件的操作_window下使用二进制文件对mysql数据库备份及恢复(再现

1,查看二进制日志文件是否启用

mysql>show variables like 'log_bin';

如果未启用,则启用二进制文件(默认是关闭的 )

2,在mysql的配置文件[mysqld]区域加上如下配置

log-error= #记录错误日志

#log= #记录所有日志

#log-slow-queries= #记录慢查询日志

#log-update= #记录更新

log-bin= #二进制日志

以上默认只启用错误日志,和二进制日志,可以指定日志文件名(如log-bin=logBin.log)如果不指定文件名在使用默认文件名(主机名-bin-000001)

3.重启mysql服务(net stop mysql 和 net start mysql)win7下以管理员身份运行command line客户端

到此为止,二进制文件启用成功

4,开始备份数据库

mysqldump -uroot -p123456 database_name>d:/backup0713.sql

5,恢复数据库:删除原有数据库,建立数据库,把备份数据库导入。

mysqladmin -uroot -p123456 drop database_name

mysqladmin -uroot -p123456 create database_name

mysql -uroot -p123456 database_name

注:在导入备份数据库前,database_name如果没有,是需要创建的;而且与backup0713.sql中数据库名是一样的才能导入。

6,使用二进制文件再现用户操作,即恢复到想恢复的时刻(如不小心误删除,错误更新等....)

使用日志文件恢复数据库必须要有一个数据库备份(只要是在二进制日志文件功能开启之后备份的就行)。恢复数据库时,可以通过时间恢复,也可以通过操作点恢复。

(1)、通过时间恢复方法如下:

如果我在-04-02 00:00:00时刻开启了二进制日志文件功能,并备份了数据库文件。且在-04-02 12:00:00数据库发生异常,需要恢复到-04-0210:00:00。则操作如下:

l用备份将数据库回复到-04-0200:00:00时候的状态。

l在命令行输入如下命令:

mysqlbinlog--stop-date="-04-02 10:00:00" mysql安装目录\data\binary-log.000001 | mysql -u root –p

这样,系统会自动执行从二进制日志有记录开始截止到-04-02 10:00:00,用户所做过的所有操作。与stop-date对应的,还有start-date属性,可以设定执行记录的开始时间。也可以两个属性都设置。

2、通过操作点恢复方法如下:

在命令行中输入mysqlbinlog D:\binary-log.000003 > D:\log.txt,执行后打开log.txt,查看里面语句,可以发现:在每个操作之前,都会有一个独特的编号,如下红字显示:

/*!*/;

# at 450/*编号450*/

#110402 15:31:50 server id 1end_log_pos 529 Query thread_id=2 exec_time=0 error_code=0

SET TIMESTAMP=1301729510/*!*/;

DROP TABLE `jwc`

此编号随着操作数增多而变大。和时间一样是一个标记,通过操作点恢复的语句如下:

mysqlbinlog --stop-position="450" mysql安装目录\data\binary-log.000001 | mysql -u root –p

这样,系统会自动执行二进制日志中编号最低的语句到编号450语句。与stop-position对应的,还有start-position属性,可以设定执行记录的开始编号。

mysql设置停止二进制文件的操作_window下使用二进制文件对mysql数据库备份及恢复(再现用户操作)...

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。