[发明专利]索引创建方法及装置、电子设备、存储介质在审
申请号: | 202010582356.6 | 申请日: | 2020-06-23 |
公开(公告)号: | CN111752901A | 公开(公告)日: | 2020-10-09 |
发明(设计)人: | 余利华;温正湖;蒋鸿翔;冯森 | 申请(专利权)人: | 网易(杭州)网络有限公司 |
主分类号: | G06F16/17 | 分类号: | G06F16/17;G06F16/22;G06F16/28 |
代理公司: | 北京律智知识产权代理有限公司 11438 | 代理人: | 王辉;阚梓瑄 |
地址: | 310052 浙江省杭州*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 索引 创建 方法 装置 电子设备 存储 介质 | ||
本公开实施例提供了一种索引创建方法及装置、电子设备、存储介质,涉及数据库技术领域。该方法包括:获取数据库索引创建语句,将数据库索引创建语句写入第一系统表中;将数据库索引创建语句写入第一日志文件中,并将第一日志文件中数据库索引创建语句对应的日志信息发送至从库,以使从库回放日志信息;从第一系统表中读取数据库索引创建语句,并执行数据库索引创建语句。本公开可以缩短主库和从库整体完成索引创建的时间。
技术领域
本公开实施例涉及数据库技术领域,更具体地,涉及一种索引创建方法、索引创建装置、电子设备及计算机可读存储介质。
背景技术
本部分旨在为权利要求书中陈述的本公开的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
MySQL数据库是目前比较流行的开源数据库,已经获得了广泛的应用。数据库管理员在日常运维中,可以进行必要的DDL(Data DefinitionLanguage,数据定义语言)操作,例如给表新增一个列、修改列的属性、给某个/些列添加索引等。
目前,数据库管理员可以通过MySQL原生支持的在线DDL命令进行DDL操作。然而,该方法在创建索引时存在的从库复制阻塞,以及主库和从库整体完成索引创建时花费时间较长的问题。
发明内容
本公开的目的在于提供一种索引创建方法、索引创建装置、电子设备及计算机可读存储介质,从而至少在一定程度上克服由于相关技术的缺陷和限制而导致的从库复制阻塞以及主库和从库整体完成索引创建时花费时间较长等问题。
根据本公开的第一方面,提供一种索引创建方法,包括:
获取数据库索引创建语句,将所述数据库索引创建语句写入第一系统表中;
将所述数据库索引创建语句写入第一日志文件中,并将所述第一日志文件中所述数据库索引创建语句对应的日志信息发送至从库,以使所述从库回放所述日志信息;
从所述第一系统表中读取所述数据库索引创建语句,并执行所述数据库索引创建语句。
可选地,在所述执行所述数据库索引创建语句之后,所述方法还包括:
在所述数据库索引创建语句执行失败时,返回所述执行所述数据库索引创建语句的步骤,直至所述数据库索引创建语句执行成功。
可选地,在所述执行所述数据库索引创建语句之后,所述方法还包括:
在所述数据库索引创建语句执行成功之后,不将所述数据库索引创建语句写入所述第一日志文件中。
可选地,在所述获取数据库索引创建语句之后,所述方法还包括:
在第一异步功能开启时,执行所述将所述数据库索引创建语句写入第一系统表中的步骤;
在所述第一异步功能关闭时,执行所述数据库索引创建语句,并在所述数据库索引创建语句执行成功之后,将所述数据库索引创建语句写入所述第一日志文件中;
将所述第一日志文件中所述数据库索引创建语句对应的日志信息发送至所述从库,以使所述从库回放所述日志信息。
可选地,所述第一异步功能开启或关闭的确定方法,包括:
通过第一工作线程读取全局变量,在所述全局变量的值为第一参数值时,确定所述第一异步功能开启;
在所述全局变量的值为第二参数值时,确定所述第一异步功能关闭。
可选地,所述从所述第一系统表中读取所述数据库索引创建语句,包括:
通过所述第一工作线程从所述第一系统表中读取所述数据库索引创建语句。
可选地,所述从库回放所述日志信息,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于网易(杭州)网络有限公司,未经网易(杭州)网络有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010582356.6/2.html,转载请声明来源钻瓜专利网。