【mysql误删表怎么恢复 mysql删除表如何恢复数据】
文章插图
文章插图
很多面试后端研发的同学都曾经被面试官问:在开发过程如果是手表里的数据修改错误或者误删了 , 该怎么办?
第一步:保证 mysql 已经开启binlog , 查看命令:
查看binklog是否开启
showvariableslike'%log_bin%';
查看binlog存放日志文件目录(如下图 , 博主binlog目录为/data/mysql):showvariableslike'%datadir%';
查看binlog存放日志文件目录
值为OFF , 需开启 , 值为ON , 已开启 。
如果没有开启 binlog , 也没有预先生成回滚 SQL , 那可能真的无法快速回滚了 。对存放重要业务数据的 MySQL , 强烈建议开启 binlog 。
第二步:进入 binlog 文件目录 , 找出日志文件
找出日志文件
第三步:切换到 mysqlbinlog 目录(当线上数据出现错误的时候首先可以询问具体操作人记录时间点 , 这个时候可以借助 mysql 自带的 binlog 解析工具 mysqlbinlog , 具体位置在 mysql 安装目录 **/mysql/bin/ 下)
mysqlbinlog目录
第四步:通过mysqlbinlog工具命令查看数据库增删改查记录(必须切换到mysqlbinlog目录才有效)
mysqlbinlog --no-defaults --database=youxi --start-datetime="2018-11-12 09:00:00" --stop-datetime="2018-11-13 20:00:00" /data/mysql/mysql-bin.000015> template_coupon_tb_product_category.txt
例子1:查询2018-11-12 09:00:00到2018-11-13 20:00:00 数据库为 youxi 的操作日志 , 输入如下命令将数据写入到一个备用的txt文件中例子2:查询2018-11-12 09:00:00到2018-11-13 20:00:00 数据库为 youxi 的操作日志 , 并输出到屏幕上
mysqlbinlog --no-defaults --database=youxi --start-datetime="2018-11-12 09:00:00" --stop-datetime="2018-11-13 20:00:00" /data/mysql/mysql-bin.000015|more
例子3:查询2018-11-12 09:00:00到2018-11-13 20:00:00 数据库为 youxi 的操作日志 , 并且过滤出 只包括template_coupon_tb_product_category 表数据的操作记录 , 输入如下命令将数据写入到一个备用的txt文件中mysqlbinlog --no-defaults --database=youxi --start-datetime="2018-11-12 09:00:00" --stop-datetime="2018-11-13 20:00:00" /data/mysql/mysql-bin.000015| grep template_coupon_tb_product_category > template_coupon_tb_product_category.txt
mysqlbinlog 命令的语法格式:mysqlbinlog mysql-bin.0000xx | mysql -u用户名 -p密码 数据库名
常用参数选项解释:--start-position=875 起始pos点--stop-position=954 结束pos点--start-datetime="2016-9-25 22:01:08" 起始时间点--stop-datetime="2019-9-25 22:09:46" 结束时间点--database=zyyshop 指定只恢复zyyshop数据库(一台主机上往往有多个数据库 , 只限本地log日志)
不常用选项:-u --user=name 连接到远程主机的用户名-p --password[=name] 连接到远程主机的密码-h --host=name 从远程主机上获取binlog日志--read-from-remote-server 从某个MySQL服务器上读取binlog日志
第五步:利用第四步输出的sql语句或者txt文本进行语句过滤 , 重新插入数据或更新数据- 如何引用其他表格数据进行求和 excel引用别的工作表数据
- docx文件表格怎么编辑 doc怎么设置表格
- 暖表情话给男伴侣的 暖表情话给男伴侣的短句撩妹话题
- 情侣跨年夜祝福说说 适合情侣跨年夜浪漫表白句子撩妹句子
- 杨振宁相信造物者存在 杨振宁教授在视频里明确表示宇宙有造物主
- 让人无法拒绝的8句表白 向女朋友表白的话
- 早上幽默的表达思念女友的情话,把那誓言轻轻戴在你的手指
- mysql jar包下载安装教程 java导入mysql驱动包
- 连接MySQL失败 mysql连接不成功怎么办
- 其实女人变心了是有前兆的 女人变心的表现