[发明专利]一种关系型数据库在线DDL修改表结构的方法和装置在审
申请号: | 201911191827.4 | 申请日: | 2019-11-28 |
公开(公告)号: | CN110909087A | 公开(公告)日: | 2020-03-24 |
发明(设计)人: | 武鹏飞 | 申请(专利权)人: | 北京思特奇信息技术股份有限公司 |
主分类号: | G06F16/28 | 分类号: | G06F16/28;G06F16/22 |
代理公司: | 北京轻创知识产权代理有限公司 11212 | 代理人: | 张力波 |
地址: | 100089 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 关系 数据库 在线 ddl 修改 结构 方法 装置 | ||
1.一种关系型数据库在线DDL修改表结构的方法,其特征在于,包括:
S1,根据需要修改的DDL功能创建所述影子表,同时不锁定所述原表,业务系统持续保持对所述原表的DML操作;
S2,在所述影子表创建完成后,将所述原表中的数据拷贝到所述影子表中;
S3,将所述影子表中的拷贝数据与所述原表的数据进行校验;
S4,当所述影子表和所述原表的校验结果一致时,将所述影子表重命名为原表名、并替换所述原表。
2.根据权利要求1所述的一种关系型数据库在线DDL修改表结构的方法,其特征在于,所述S2,具体包括:获取关系型数据库的主实例的增量binlog信息,将所述binlog信息中所述原表的全量数据和增量数据拷贝到所述影子表。
3.根据权利要求2所述的一种关系型数据库在线DDL修改表结构的方法,其特征在于,在所述S2的拷贝之前还包括:S21,用户触发切换,阻止所述原表上的所述DML操作。
4.根据权利要求1-3任一项所述的一种关系型数据库在线DDL修改表结构的方法,其特征在于,所述S3具体包括:通过crc32算法将所述影子表中的拷贝数据与所述原表的数据进行校验。
5.根据权利要求4任一项所述的一种关系型数据库在线DDL修改表结构的方法,其特征在于,所述S4还包括:当所述影子表和所述原表的校验结果不一致时,则进入S2步骤。
6.根据权利要求5所述的一种关系型数据库在线DDL修改表结构的方法,其特征在于,在所述S1之前还包括:S11,Online DDL客户端连接关系型数据库的主实例。
7.根据权利要求6所述的一种关系型数据库在线DDL修改表结构的方法,其特征在于,在所述S6之前还包括:S12,部署关系型数据库的示例架构。
8.根据权利要求7所述的一种关系型数据库在线DDL修改表结构的方法,其特征在于,所述DDL功能包括:添加索引、删除索引、添加外键约束、删除外键约束、改变列名、添加列、删除列、修改列数据类型、更改列顺序、设置列属性、添加主键、删除并添加主键和删除主键中的至少一项。
9.一种存储介质,其特征在于,所述存储介质中存储有指令,当计算机读取所述指令时,使所述计算机执行如权利要求1至8中任一项所述的关系型数据库在线DDL修改表结构的方法。
10.一种关系型数据库在线DDL修改表结构的装置,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序,实现如权利要求1至8中任一项所述的关系型数据库在线DDL修改表结构的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京思特奇信息技术股份有限公司,未经北京思特奇信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911191827.4/1.html,转载请声明来源钻瓜专利网。