失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > mysql bin日志备份_mysql之binlog日志备份还原

mysql bin日志备份_mysql之binlog日志备份还原

时间:2019-02-17 18:30:10

相关推荐

mysql bin日志备份_mysql之binlog日志备份还原

实例:

在mysql有时执行了错误的update或者delete时导致大量数据错误恢复的办法。执行时没有开启事务,也没有对数据进行。这时就需要使用到sqlbinlog工具。

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

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

具体步骤:(注:mysqlbinlog 命令直接在cmd控制台xxbin.000001文件路径下操作,不要进mysql)

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='-11-22 10:00:00' xxbin.000001>a.sql | mysql -u root -p )这句意思是导出在-11-22 10点之前的语句,反之start是导出时间之后的。 start和stop可以同时使用。

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

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

其它:

1、还有个sql_log

mysql> show variables like 'sql_log_%';

Mysql开启关闭sql二进制日志:

mysql> set sql_log_bin=0; //关闭

set session sql_log_bin=0;

2、查找文件位置:

find / -name f

3、linux 查看当前所在目录的全路径

pwd命令:

/var/lib/mysql

4、查看当前binary log的情况:

mysql>show master status;

5、在f/my.ini中设定binary logs回滚天数:

expire_logs_days = 7

6、查看Master的bin log日志

mysql> show master logs;+-----------------+-----------+| Log_name | File_size |+-----------------+-----------+| mysql-bin.000001 | 98 |+-----------------+-----------+1 row in set (0.00 sec)

如果觉得《mysql bin日志备份_mysql之binlog日志备份还原》对你有帮助,请点赞、收藏,并留下你的观点哦!

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