首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

MLOG_CHECKPOINT缺失下紧急数据恢复

MLOG_FILE_NAME用于记录在checkpoint之后所有被修改过的信息(space, filepath);MLOG_CHECKPOINT用于标志MLOG_FILE_NAME的结束。...这里需要强调的一点就是MLOG_CHECKPOINT在每个checkpoint点中最多只存在一次,如果出现多次MLOG_CHECKPOINT类型的日志,则说明Redo已经损坏,InnoDB会报错。...答案是肯定的,在每次checkpoint过后,如果没有发生数据更新,那么MLOG_CHECKPOINT就不会被记录。...所以只要简单查找下Redo log最新一个checkpoint后的MLOG_CHECKPOINT是否存在,就能判定上次MySQL是否正常关机。...MLOG_CHECKPOINT,则说明InnoDB不需要进行recovery,后面的两次扫描可以省略,如果找到了MLOG_CHECKPOINT,则获取MLOG_FILE_NAME到指定列表,后续只需打开该链表中的表空间即可

1.4K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    如何做 Nginx 安全日志分析可视化,看这一篇就够了

    ,下面就是配置ModSecurity日志的配置路径,配置完成后,点击Next 系统会给出提示配置,需要按照给出的配置,配置这几个配置文件,这里按照提示的配置操作即可,需要的mlog2waffle配置文件及启动脚本都在...extra目录下 配置完成后,启动mlog2waffle mlog2waffle,是通过put方法发送日志到waf-fle的,但是默认Nginx是不允许put请求的,所以启动会报错,需要在nginx中...,通过dav方法,允许put请求 启动mlog2waffle过程中,遇到不少问题,记录如下: mlog2waffle中配置了$CHECK_CERT = “TRUE”,用来检测SSL的,当用http的时候...,这里要改成False,否则会握手失败 mlog2waffle中配置了$CHECK_CONNECTIVITY = “TRUE”,这里是启动,检测mlog2waffle和waffle的连通信的,通过check_conn...了 启动后,通过waf的access日志就可以看到mlog2waffle已经开始通过put方法将日志解析成event,传输到waf-fle 在mlog2waffle的readIndex方法中,因为要读取并解析日志索引文件

    94820

    近日学习笔记:df -h和du -sh命令,查看linux版本,vbm管理工具,su命令,ssh服务升级技巧,source命令

    文章目录 df -h和du -sh区别 df -h查看整个系统中文件系统的使用情况 du -sh *查看当前目录下各个文件及目录占用空间大小 查看Linux系统版本的命令: VirtualBox管理工具...首先是获取源代码 git clone https://github.com/mlogclub/mlog.git 下载之后,你可以看到mlog的目录,进入到目录里面。.../mlog/server/bbs-go.example.yaml ..../mlog/server/bbs-go.yaml 修改配置文件,这里是修改域名 BaseUrl: https://mlog.club # 网站域名 修改数据库信息,这里我用宝塔已经建好数据了 MySqlUrl.../mlog/site/nuxt.config.js,配置后台服务的 api 访问地址: proxy: { '/api/': process.env.NODE_ENV === 'production

    2K10

    如何做 Nginx 安全日志分析可视化?

    ,下面就是配置ModSecurity日志的配置路径,配置完成后,点击Next 系统会给出提示配置,需要按照给出的配置,配置这几个配置文件,这里按照提示的配置操作即可,需要的mlog2waffle配置文件及启动脚本都在...extra目录下 配置完成后,启动mlog2waffle mlog2waffle,是通过put方法发送日志到waf-fle的,但是默认Nginx是不允许put请求的,所以启动会报错,需要在nginx中...,通过dav方法,允许put请求 启动mlog2waffle过程中,遇到不少问题,记录如下: mlog2waffle中配置了$CHECK_CERT = “TRUE”,用来检测SSL的,当用http的时候...,这里要改成False,否则会握手失败 mlog2waffle中配置了$CHECK_CONNECTIVITY = “TRUE”,这里是启动,检测mlog2waffle和waffle的连通信的,通过check_conn...了 启动后,通过waf的access日志就可以看到mlog2waffle已经开始通过put方法将日志解析成event,传输到waf-fle 在mlog2waffle的readIndex方法中,因为要读取并解析日志索引文件

    48400

    深入理解MySQL innodb日志管理

    mlog_2bytes、mlog_4bytes、mlog_8bytes:这四个类型,表示要在某个位置,写入一个(两个、四个、八个)字节的内容; ②:mlog_write_string:这种类型的日志,...其实和mlog_ibyte是类似的,只是mlog_ibyte是要写一个固定长度的数据,而mlog_write_string是要写一段变长的数据。...③:mlog_undo_insert:这个类型的日志,是在将一条记录设置为页面中的最小记录时产生的,因为只是打个标记,存储的内容比较简单; ④:mlog_init_file_page:这个类型的日志比较简单...,只有前面的基本头信息,没有data部分; ⑤:mlog_comp_page_create:这个类型只需要村一个类型及要创建的页面的位置即可; ⑥:mlog_multi_rec_end:这个类型的记录是非常特殊的...⑦:mlog_comp_rec_clust_delete_mark:这个类型的日志是表示,需要将聚集索引中的某个记录打上删除标志; ⑧:mlog_comp_rec_update_in_place:这个类型的日志记录更新后的记录信息

    59120

    如何做Nginx安全日志分析可视化

    配置完成后,启动mlog2waffle mlog2waffle,是通过put方法发送日志到waf-fle的,但是默认Nginx是不允许put请求的,所以启动会报错,需要在nginx中,通过dav方法,允许...启动mlog2waffle过程中,遇到不少问题,记录如下: mlog2waffle中配置了$CHECK_CERT = "TRUE",用来检测SSL的,当用http的时候,这里要改成False,否则会握手失败...mlog2waffle中配置了$CHECK_CONNECTIVITY = "TRUE",这里是启动,检测mlog2waffle和waffle的连通信的,通过check_conn方法 ?...所以,不管怎么做,这里检测就不会通过,两种方法处理,一种是直接关闭这个检测,mlog2waffle就可以正常启动,另外一种方法就是修改这个检测的方法,将uri带上,mlog2waffle是perl脚本,...修改完这些,就可以通过脚本启动mlog2waffle了 ? 启动后,通过waf的access日志就可以看到mlog2waffle已经开始通过put方法将日志解析成event,传输到waf-fle ?

    69340

    【腾讯云CDB】如何快速删除InnoDB中的大表

    可能有人会问,不是在提交事务前写入了一条MLOG_FILE_DELETE类型的redo日志吗,那么数据库启动后重做redo日志时难道不会删除磁盘上遗留的ibd文件?...遗憾的是,现在crash recovery的逻辑中,对于MLOG_FILE_DELETE类型的日志,只把它当作是一条“告知”含义的日志记录,不会去删除本应被删除的文件(在UNIV_HOTBACKUP代码分支的...如果想要用这个方案,就需要修改MLOG_FILE_DELETE日志的语义,也就是说在crash recovery中,当执行这条日志时,如果磁盘上该文件还存在,则将该文件删除,同时,将DROP TABLE...drop逻辑,清理buffer pool的flush list,会多次持有和释放buffer pool mutex以及flush list mutex 启动一个mini-transaction 写入MLOG_FILE_DELETE...>mutex unlink ibd文件 假设已经没有dict_sys->mutex瓶颈,单纯地unlink一个大文件也会影响系统其他的IO操作,因为需要涉及大量的文件系统日志操作(详见之前推送的文章”Linux

    3.8K20

    MySQL——redo日志

    MLOG_2BYTE(type=2) 表示在页面的某个偏移量处写入2字节的redo日志类型。 MLOG_4BYTE(type=4) 表示在页面的某个偏移量处写入4字节的redo日志类型。...由于Max Row ID占用8字节的空间,所以在修改页面中的这个属性时,会记录一条类型为MLOG_8BYTE的redo日志 MLOG_WRITE_STRING(type=30) 表示在页面的某个偏移量处写入一个字节序列...【注】只要在【数据占用的字节数】处填入1、2、4、8这些数字,就可以分别替代MLOG_1BYTE、MLOG_2BYTE、MLOG_4BYTE、MLOG_8BYTE这些类型的redo日志。...MLOG_COMP_LIST_END_DELETE(type=43) 与MLOG_COMP_LIST_START_DELETE类型的redo日志相呼应,表示删除一系列记录,直到MLOG_COMP_LIST_END_DELETE...所以,某个需要保证原子性的操作所产生的一系列redo日志,必须以一条类型为MLOG_MULTI_REC_END的redo日志结尾,如下所示: 当系统因崩溃而重启恢复时,只有解析到类型为MLOG_MULTI_REC_END

    89222

    如何快速删除InnoDB中的大表?

    可能有人会问,不是在提交事务前写入了一条MLOG_FILE_DELETE类型的redo日志吗,那么数据库启动后重做redo日志时难道不会删除磁盘上遗留的ibd文件?...遗憾的是,现在crash recovery的逻辑中,对于MLOG_FILE_DELETE类型的日志,只把它当作是一条“告知”含义的日志记录,不会去删除本应被删除的文件(在UNIV_HOTBACKUP代码分支的...如果想要用这个方案,就需要修改MLOG_FILE_DELETE日志的语义,也就是说在crash recovery中,当执行这条日志时,如果磁盘上该文件还存在,则将该文件删除,同时,将DROP TABLE...drop逻辑,清理buffer pool的flush list,会多次持有和释放buffer pool mutex以及flush list mutex 启动一个mini-transaction 写入MLOG_FILE_DELETE...>mutex unlink ibd文件 假设已经没有dict_sys->mutex瓶颈,单纯地unlink一个大文件也会影响系统其他的IO操作,因为需要涉及大量的文件系统日志操作(详见之前推送的文章”Linux

    8.7K32
    领券