mysql bin 恢复_mysql mysql-bin 怎么恢复

本文介绍了如何开启MySQL的bin日志功能,并在误删数据后利用bin日志进行数据恢复。步骤包括修改my.cnf配置文件启用log-bin,演示创建和删除数据,以及使用mysqlbinlog工具恢复数据。强调了数据库备份的重要性。
摘要由CSDN通过智能技术生成

匿名用户

1级

2017-11-05 回答

打开mysql的bin log功能:

对于mysql也是支持增量备份,但要打开mysql的bin log功能。

我们修改mysql的配置文件。linux是/etc/my.cnf,windows是mysql的安装目录/my.ini

我们在[mysqld]下面加上log-bin一行代码,如下面。

[mysqld]

log-bin=mysql-bin

复制代码

加完后重起mysql即可。

某客户更新数据的时候,误删了数据库的内容,因为数据库做了主从,但是没有做备份(备份很重要啊!)幸好开启了bin-log,之后只好把整个日志的记录拿回来本地进行恢复。

之后自己也做了一个简单的测试,对数据进行恢复,具体如下:

1、新建一个表

CREATE TABLE `lynn`.`sn_test` ( `name` VARCHAR( 10 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL , `age` INT( 3 ) NOT NULL ) ENGINE = MYISAM;

2、插入多条数据

INSERT INTO `lynn`.`sn_test` (`name`, `age`) VALUES ('lynn1', '1');

INSERT INTO `lynn`.`sn_test` (`name`, `age`) VALUES ('lynn2', '2');

INSERT INTO `lynn`.`sn_test` (`name`, `age`) VALUES ('lynn3', '3');

INSERT INTO `lynn`.`sn_test` (`name`, `age`) VALUES ('lynn4', '4');

3、查看数据并删除

mysql> select * from sn_test;

| name | age |

| lynn1 | 1 |

| lynn2 | 2 |

| lynn3 | 3 |

| lynn4 | 4 |

4 rows in set (0.00 sec)

mysql> delete from sn_test;

Query OK, 4 rows affected (0.00 sec)

mysql> select * from sn_test;

Empty set (0.00 sec)

4、mysqlbinlog恢复数据

mysqlbinlog mysql-bin.000006 > 1.sql

查看1.txt里面数据插入的纪录,把删除之前的数据进行恢复

mysqlbinlog mysql-bin.000006 --start-position=2471 --stop-position=2876 | mysql -uroot -p123

重新登录,查看数据,OK,已经成功恢复了

对于数据库操作,应该注意如下问题:

1、要常备份(全备,增量备份),出了问题可以最快恢复数据;

2、操作数据库前,要把需要操作的数据库或者表dump出来;

3、需要把bin-log打开,就算没有做上面的两步,也可以通过e79fa5e98193e58685e5aeb931333363396365日志恢复数据

MySQL的二进制日志(binary log),通常以文件名"mysql-bin.00001"开始,记录了数据库的所有更改操作(如数据修改、表结构变化等)。这些日志对于数据的备份和恢复至关重要,尤其是在主从复制和数据恢复场景中。 如果需要使用mysql-bin.00001等二进制日志文件进行恢复,通常要按照以下步骤操作: 1. 停止MySQL服务以防止数据进一步变化。 2. 备份当前的数据库文件,以防恢复过程中出现问题。 3. 使用mysqlbinlog工具读取二进制日志文件,并将其内容转换为可读的SQL语句。这一步骤可以通过以下命令实现: ``` mysqlbinlog mysql-bin.00001 > mysql-bin.00001.sql ``` 这会将日志文件中的事件转换为SQL语句,并保存到一个文件中。 4. 使用MySQL客户端工具执行上一步生成的SQL文件,将数据恢复到特定状态: ``` mysql -u username -p < mysql-bin.00001.sql ``` 在执行这个命令之前,需要输入正确的数据库用户名和密码。 5. 在数据恢复完成后,检查数据的完整性和一致性。 6. 重启MySQL服务,以使更改生效。 注意:在使用二进制日志进行恢复时,需要特别注意二进制日志中的时间点,以确保数据恢复到期望的状态。如果二进制日志文件中包含的是增量数据,可能需要执行多个日志文件来完成恢复。 在执行恢复操作之前,建议详细了解mysqlbinlog工具的使用方法和选项,以及数据库的备份和恢复策略。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值