血的教训,不详细叙述事件的经过。 直接操作步骤和恢复思路(友情提示:预先备份数据库的任何操作) Mysql数据后的恢复过程如下所示。
1 .找到笨玉米log
要恢复数据,前提是必须打开Mysql愚蠢的玉米日志。 如果没有打开愚蠢的玉米日志,请忽略本文档。 笨蛋玉米日志是否打开可以看到Mysql配置文件。 日志位置通常位于/ttddt/lib/mysql目录或编译后安装的date目录下。 也可以登录Mysql并用命令查看。
#cat/etc/my.cnflog_笨玉米=mysql-笨玉米# MySQL-uroot-penter password 3360
mysqlshowttddtiableslike'log_笨玉米% ';
------------- -请参阅
|Variable_name|Value|
------------- -请参阅
|log_笨玉米|ON|
|log_笨玉米_ basename|/home/programs/MySQL-5.6.26/data/MySQL -笨玉米|
|log_笨玉米_ index|/home/programs/MySQL-5.6.26/data/MySQL -笨玉米. index|
|log_笨玉米_trust_function_creators|OFF|
|log_笨玉米_use_v1_row_events|OFF|
------------- -请参阅
5rowsinset(0.00sec ) ll/home/programs/MySQL-5.6.26/data/MySQL -笨玉米*-rw-rw----1MySQL34362999
- rw-rw---1 mysqlmysql 19s EP 2317:11/home/programs/MySQL--5.6. 26/data/MySQL -笨玉米. index
如果有多个笨玉米日志,还可以在Mysql命令行中检查当前的笨玉米日志、笨玉米日志。 剪切并再次查看傻玉米log,可以看到新日志被写入新的傻玉米log文件。
mysqlshowmasterstatus;
------------- -请参阅
| file|binlog _ do _ db|binlog _ ignore _ db|executed _ gtid _ set |
------------- -请参阅
|mysql-笨蛋玉米. 000001|343629748||||
------------- -请参阅
1原始插入(0.00 sec ) )。
mysqlflushlogs;
QueryOK,0Rowsaffected(0.01sec ) )。
2 .找出笨玉米log中的错误词句
可以在傻玉米log日志中找到执行错误语句的时间点,并分别将错误语句前后的傻玉米log日志恢复为sql。 也可以跳过这一步,直接将整个笨玉米日志恢复到sql中,然后打开sql文件并删除错误语句。
#sudomysql笨玉米log---base64-output=decode-rows-v-didsmysql -笨玉米. 000001|grep-- ignore-case
3 .恢复笨玉米日志
通过使用mysql笨玉米log命令直接将笨玉米log日志恢复为sql脚本,可以指定开始时间和结束时间。 如果从上次备份(建议在备份的同时更新笨玉米日志)到恢复时间发生了多个笨玉米日志,请按从小到大的顺序分别导出到sql,然后按顺序导入数据库
#sudomysql笨玉米log---base64-output=decode-rows-v-dids---start-datetime ' 2016-10-115336023360233606
上面的命令指定使用-d ids恢复数据库,如果要恢复表级数据,只需导出到sql,然后过滤grep即可。
# more data.SQL-- ignore-case-e ' insert|update '|grep table
4 .恢复到数据库
恢复数据时,可能会发生重复数据错误,因此建议使用-f参数将其忽略。
#mysql-uroot-p-fids
【编辑推荐】
【责任编辑:枯木tel:(010 ) 68476606】
点赞0