一种基于binlog的大表变更及清理方法
基本信息
申请号 | CN202210170460.3 | 申请日 | - |
公开(公告)号 | CN114547013A | 公开(公告)日 | 2022-05-27 |
申请公布号 | CN114547013A | 申请公布日 | 2022-05-27 |
分类号 | G06F16/215(2019.01)I;G06F16/22(2019.01)I;G06F16/23(2019.01)I;G06F16/21(2019.01)I | 分类 | 计算;推算;计数; |
发明人 | 刘隆剑;陈翔;欧志伟;吴坚 | 申请(专利权)人 | 上海甄云信息科技有限公司 |
代理机构 | 北京知呱呱知识产权代理有限公司 | 代理人 | - |
地址 | 201706上海市青浦区香花桥街道郏一村7号3幢1层A区046室 | ||
法律状态 | - |
摘要
摘要 | 本发明公开了一种基于binlog的大表变更及清理方法。该方法主要包括:接收输入参数(数据库连接信息、表名、DDL命令和where条件);创建日志记录表和幽灵表,如果为DDL操作,则先将DDL命令应用到幽灵表;通过insert into的方式从原表拷贝数据至幽灵表,如果为数据清理操作,则在insert int语句中拼接where条件,只拷贝符合where条件的数据,同时监听binlog日志批量解析dml事件;监测到数据拷贝完成且没有新的binlog事件,进行原表和幽灵表的切换。本发明灵活性、稳定性较好,既可以用作大表变更,也可以用作数据清理,在实际生产环境使用过程中,对数据库性能影响较小。 |
