CN116643926A - 一种数据库访问方法、装置、电子设备及存储介质 - Google Patents

一种数据库访问方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN116643926A
CN116643926A CN202310686182.1A CN202310686182A CN116643926A CN 116643926 A CN116643926 A CN 116643926A CN 202310686182 A CN202310686182 A CN 202310686182A CN 116643926 A CN116643926 A CN 116643926A
Authority
CN
China
Prior art keywords
database
backup
accessed
data
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310686182.1A
Other languages
English (en)
Inventor
倪晓强
丁坤宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Genyan Network Technology Co ltd
Original Assignee
Shanghai Genyan Network Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Genyan Network Technology Co ltd filed Critical Shanghai Genyan Network Technology Co ltd
Priority to CN202310686182.1A priority Critical patent/CN116643926A/zh
Publication of CN116643926A publication Critical patent/CN116643926A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2149Restricted operating environment
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Quality & Reliability (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请提供一种数据库访问方法、装置、电子设备及存储介质,涉及计算机技术领域。该方法包括:通过业务系统的数据备份还原模块获取数据库访问请求;其中,数据库访问请求包括待访问的数据库类型;待访问的数据库类型根据配置文件获得;数据备份还原模块根据待访问的数据库类型确定待访问数据库的加密登录信息;数据备份还原模块解密加密登录信息,获得解密后的登录信息,并根据解密后的登录信息对待访问数据库进行访问。装置用于执行上述方法。本申请通过配置文件获取待访问的数据库类型,并根据数据库类型确定待访问数据库的登录信息,以此在不需要数据库客户端的情况下通过数据备份还原模块实现对数据库的访问,提高用户对数据库的可操作性。

Description

一种数据库访问方法、装置、电子设备及存储介质
技术领域
本申请涉及计算机技术领域,具体而言,涉及一种数据库访问方法、装置、电子设备及存储介质。
背景技术
数据库系统一直是业务系统的核心资产,其重要性不言而喻。在如今纷繁复杂的系统架构中,威胁数据库稳定性的因素也在不断上升,针对数据有效的备份和还原机制的关注度也逐步增大。
现有技术中,数据库服务器和应用服务器分离部署,用户需要安装数据库对应的客户端以及获取数据库的登录权限才能对数据库进行备份还原操作,使得用户对数据库的可操作性较低。
发明内容
本申请实施例的目的在于提供一种数据库访问方法、装置、电子设备及存储介质,用以通过业务系统的数据备份还原模块对数据库中的数据进行操作,以提高对数据库的可操作性。
第一方面,本申请实施例提供一种数据库访问方法,该方法包括:通过业务系统的数据备份还原模块获取数据库访问请求;其中,数据库访问请求包括待访问的数据库类型;待访问的数据库类型根据配置文件获得;数据备份还原模块根据待访问的数据库类型确定待访问数据库的加密登录信息;数据备份还原模块解密加密登录信息,获得解密后的登录信息,并根据解密后的登录信息对待访问数据库进行访问。
本申请实施例通过业务系统的数据备份还原模块读取配置文件的信息获取待访问的数据库类型,再由数据库类型获得待访问的数据库的加密登录信息,解密该登录信息后实现对数据库的访问。在这个过程中,由于通过配置文件获取待访问的数据库类型,并根据数据库类型确定待访问数据库的登录信息,以此在不需要数据库客户端的情况下通过数据备份还原模块实现对数据库的访问,提高用户对数据库的可操作性。
再有,考虑到现有技术中,数据库服务器和应用服务器分离部署,用户需要安装数据库对应的客户端以及向数据库拥有者获取数据库的登录信息才能对数据库进行操作,但通常获取权限的过程存在一定的安全风险。因此,本申请实施例通过集成在业务系统中的数据备份还原模块获取待访问数据库的加密登录信息,并动态解密该加密登录信息以实现对数据库的访问。在这个过程中,不需要安装数据库客户端,即不需要向数据库拥有者获取登录信息,并且,数据备份还原模块获取的登录信息是加密形式,在对待访问数据库访问期间,数据备份还原模块动态解密加密登录信息,而不会在任何过程中打印或者输出明文的登录信息。因此,降低了操作数据库的安全风险,进而提高了操作安全性。
在一些实施例中,在数据备份还原模块根据解密后的登录信息对待访问数据库进行访问之后,该方法还包括:数据备份还原模块获取数据库备份请求;数据备份还原模块根据待访问的数据库类型和数据库备份请求调用对应的解析模块对待访问数据库进行解析,获得待访问数据库的数据库表信息;其中,数据库表信息包括数据库表名和数据库表内容;数据备份还原模块根据数据库表名创建备份文件,并将数据库表内容写入备份文件。
本申请实施例通过数据备份还原模块根据待访问的数据库类型确定对应的解析模块,使得针对性的对待访问的数据库进行解析,并根据解析后获得的数据库表信息生成备份文件。在这个过程中,数据备份还原模块能针对不同的数据库类型,生成对应的备份文件,并且在不需要登录数据库客户端的情况下实现对数据库的备份,提高用户对数据库的可操作性和操作安全性。
在一些实施例中,数据库表内容包括内容属性,内容属性包括可读属性和不可读属性;数据备份还原模块将数据库表内容写入备份文件,包括:数据备份还原模块根据不可读属性对应的表内容生成二进制文件和二进制文件的文件标识;数据备份还原模块将文件标识和可读属性对应的表内容写入备份文件。
本申请实施例通过数据备份还原模块将数据库表内容分类为可读内容和不可读内容,并分别生成对应的文件。在这个过程中,由于不可读内容不能直接写入备份文件中,因此将不可读内容生成单独的二进制文件进行存放,而在备份文件中存储二进制文件的标识,以此将数据库表内容中的可读内容和不可读内容建立连接关系。保证了数据库备份的完整性和准确性。
在一些实施例中,在数据备份还原模块根据所述解密后的登录信息对待访问数据库进行访问之后,该方法还包括:数据备份还原模块获取数据库还原请求;数据备份还原模块根据待访问的数据库类型和数据库还原请求读取数据库类型对应的历史备份数据;数据备份还原模块将历史备份数据写入待访问数据库。
本申请实施例通过数据备份还原模块根据待访问的数据库类型确定需要进行还原的历史备份数据,并将历史备份数据写回待访问的数据库。在这个过程中,在不需要登录数据库客户端的情况下通过数据备份还原模块实现对数据库的还原,提高用户对数据库的可操作性和操作安全性。
在一些实施例中,历史备份数据包括多个历史备份文件和多个历史二进制文件;数据备份还原模块将历史备份数据写入待访问数据库,包括:数据备份还原模块根据历史备份文件的文件标识确定多个历史二进制文件中与文件标识对应的目标历史二进制文件;其中,历史二进制文件根据不可读属性对应的历史表内容生成;数据备份还原模块将历史备份文件和与目标历史二进制文件写入待访问数据库。
本申请实施例在数据备份还原模块将历史备份数据写回数据库时,需要根据历史备份文件标识确定与历史备份文件对应的历史二进制文件,以此保证写回数据库的数据完整性和准确性。
第二方面,本申请实施例提供一种数据库访问装置,该装置包括:获取单元,用于通过业务系统的数据备份还原模块获取数据库访问请求;其中,数据库访问请求包括待访问的数据库类型;待访问的数据库类型根据配置文件获得;确定单元,用于通过数据备份还原模块根据待访问的数据库类型确定待访问数据库的加密登录信息;访问单元,用于通过数据备份还原模块解密加密登录信息,获得解密后的登录信息,并根据解密后的登录信息对待访问数据库进行访问。
在一些实施例中,该装置还包括数据备份单元,用于通过数据备份还原模块获取数据库备份请求;通过数据备份还原模块根据待访问的数据库类型和数据库备份请求调用对应的解析模块对待访问数据库进行解析,获得待访问数据库的数据库表信息;其中,数据库表信息包括数据库表名和数据库表内容;通过数据备份还原模块根据数据库表名创建备份文件,并将数据库表内容写入所述备份文件。
在一些实施例中,该装置还包括数据还原单元,用于通过数据备份还原模块获取数据库还原请求;通过数据备份还原模块根据待访问的数据库类型和数据库还原请求读取数据库类型对应的历史备份数据;通过数据备份还原模块将历史备份数据写入待访问数据库。
第三方面,本申请实施例提供一种电子设备,包括:处理器、存储器、存储介质和总线,其中,所述处理器和所述存储器通过所述总线完成相互间的通信;所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行第一方面的方法步骤。
第四方面,本申请实施例提供一种非暂态计算机可读存储介质,包括:所述计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行第一方面的方法步骤。
本申请的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请实施例了解。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种数据库访问方法的流程示意图;
图2为本申请实施例提供的一种数据库访问装置结构示意图;
图3为本申请实施例提供的电子设备结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,应当理解,本申请中附图仅起到说明和描述的目的,并不用于限定本申请的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本申请中使用的流程图示出了根据本申请的一些实施例实现的操作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本申请内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。
另外,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同;本文中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请;本申请的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。
在本申请实施例的描述中,技术术语“第一”“第二”等仅用于区别不同对象,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量、特定顺序或主次关系。在本申请实施例的描述中,“多个”的含义是两个以上,除非另有明确具体的限定。
在本申请实施例的描述中,术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
为了便于理解,本申请实施例提供的技术方案,下面以服务器作为执行主体为例,对本申请实施例提供的一种数据库访问方法的应用场景进行介绍。其中,服务器具体可以为应用服务器,也可以为Web服务器。
图1为本申请实施例提供的一种数据库访问方法的流程示意图,如图1所示,该方法包括:
步骤101,服务器通过业务系统的数据备份还原模块获取数据库访问请求;其中,数据库访问请求包括待访问的数据库类型;待访问的数据库类型根据配置文件获得。
在具体实施过程中,在服务器对数据库进行访问之前,用户预先在配置文件中配置需要访问的数据库类型,以使服务器能根据配置文件中配置的数据库类型对数据库进行访问。而服务器通过业务系统的数据备份还原模块获取的数据库访问请求中除了包括待访问的数据库类型外,还包括待访问的数据库连接地址,在对数据库访问之前,服务器根据待访问的数据库连接地址与待访问的数据库建立连接。
需要说明的是,待访问的数据库类型包括MySQL、Oracle、SqlServer、DataBase、PostgreSQL、达梦、神通等数据库。而实际应用中,具体选择对哪一个数据库进行访问,可根据实际情况进行确定,本申请对此不作具体限定。
步骤102,服务器通过数据备份还原模块根据待访问的数据库类型确定待访问数据库的加密登录信息。
在具体实施过程中,服务器通过数据库访问请求确定待访问的数据库类型后,并通过数据备份还原模块动态获取配置文件中与待访问的数据库类型对应的加密登录信息,其中,加密登录信息包括登录数据库的账号和密码。
步骤103,服务器通过数据备份还原模块解密加密登录信息,获得解密后的登录信息,并根据解密后的登录信息对待访问数据库进行访问。
在具体实施过程中,服务器与待访问的数据库建立连接并且获取到与待访问的数据库类型对应的加密登录信息后,通过数据备份还原模块动态解密该加密登录信息,以使服务器能根据解密后的登录信息登录待访问的数据库,以实现对待访问数据库的访问。
本申请实施例通过业务系统的数据备份还原模块读取配置文件的信息获取待访问的数据库类型,再由数据库类型获得待访问的数据库的加密登录信息,解密该登录信息后实现对数据库的访问。在这个过程中,由于通过配置文件获取待访问的数据库类型,并根据数据库类型确定待访问数据库的登录信息,以此在不需要数据库客户端的情况下通过数据备份还原模块实现对数据库的访问,提高用户对数据库的可操作性。
再有,考虑到现有技术中,数据库服务器和应用服务器分离部署,用户需要安装数据库对应的客户端以及向数据库拥有者获取数据库的登录信息才能对数据库进行操作,但通常获取权限的过程存在一定的安全风险。因此,本申请实施例通过集成在业务系统中的数据备份还原模块获取待访问数据库的加密登录信息,并动态解密该加密登录信息以实现对数据库的访问。在这个过程中,不需要安装数据库客户端,即不需要向数据库拥有者获取登录信息,并且,数据备份还原模块获取的登录信息是加密形式,在对待访问数据库访问期间,数据备份还原模块动态解密加密登录信息,而不会在任何过程中打印或者输出明文的登录信息。因此,降低了操作数据库的安全风险,进而提高了操作安全性。
在一些实施例中,在数据备份还原模块根据解密后的登录信息对待访问数据库进行访问之后,该方法还包括:服务器通过数据备份还原模块获取数据库备份请求;服务器通过数据备份还原模块根据待访问的数据库类型调用对应的解析模块对待访问数据库进行解析,获得待访问数据库的数据库表信息;其中,数据库表信息包括数据库表名和数据库表内容;服务器通过数据备份还原模块根据数据库表名创建备份文件,并将数据库表内容写入备份文件。
在具体实施过程中,在服务器通过数据备份还原模块登录待访问数据库后,可对待访问数据库执行数据库备份操作,因此,服务器通过数据备份还原模块根据获取到的数据库备份请求对待访问的数据库执行备份操作。应当知道的是,在执行备份操作时,确定了待访问数据库的类型,即确定了需要执行备份操作的数据库类型。
数据库备份请求中可以包括需要备份的表的名称、备份路径、备份周期、备份时间以及备份文件保留份数等。其中,需要备份的表的名称可以是待访问数据库中全部表的名称,也可以是待访问数据库中部分表的名称,因此,可通过配置表的名称实现对待访问数据库的全量备份或者部分备份。备份路径用于指示将待访问数据库中的表备份到的位置,该位置可以是本地磁盘的某个位置,可以是某个服务器上的某个路径,还可以是U盘、移动硬盘等第三方移动设备上。具体的备份路径可根据实际情况进行选择,本申请对此不作具体限定。备份周期指每隔多长时间备份一次,例如,可以是每天进行备份,可以是每两天进行备份,还可以是每一个月备份一次,具体备份周期可根据实际情况进行设置,本申请对此不作具体限定。备份时间跟备份周期相关,备份时间指在备份周期内的哪个时间点进行备份,例如,备份周期为每天进行备份,而备份时间可以设置为每天的凌晨1点进行备份等。备份文件保留份数指备份过程中,对多次备份的文件中需要保留的份数,例如,备份了3次,但只保留最近一次备份的文件。因此,服务器可定期对访问的数据库执行备份操作,以抵御可能出现的风险。
应当知道的是,数据库备份请求可通过配置文件进行配置后,服务器通过数据备份还原模块读取配置文件的内容来获取数据库备份请求;而数据库备份请求的内容可根据实际情况进行设置,本申请对此不作具体限定。
服务器通过数据备份还原模块获取到数据库备份请求后,在执行备份操作的过程中,由于需要通过数据备份还原模块读取待访问数据库的数据库表信息,而针对不同的数据库类型,读取数据库表信息的过程以及具体实现是不相同的,具体为:针对不同类型的数据库,获取数据库中有多少张表的查询语句不同;获取一张表中,有多少字段和字段的类型的查询语句不同;按照分页的形式,从一张表中查询出数据的分页语法不同;每个数据库,存储数据用的字段类型也存在差异等。因此,需要根据待访问的数据库类型调用对应的解析模块对待访问数据库进行解析,从而获得待访问数据库的数据库表信息。
应当知道的是,解析模块为开发人员预先根据不同的数据库的类型进行开发完成的代码模块,并且已经集成到需要进行数据库备份的系统中。针对不同的数据库类型,有与其对应的解析模块。
服务器在通过数据备份还原模块解析待访问的数据库后,获得该数据库需要备份的数据库表信息,在将数据库表信息写入备份文件时,根据数据库表名创建备份文件,将数据库表内容写入对应的备份文件中。应当知道的是,若需要备份待访问数据库中的多个表,则每一个表都对应创建一个备份文件,备份文件的名称即为对应的表的名称。备份文件的格式可以是csv,excel、txt等,具体可根据实际情况对备份文件的格式进行选择,本申请对此不作具体限定。但应当知道的是,以csv格式的文件对备份数据进行存储,可被常用的数据库可视化管理软件识别和读取,因此,兼容性更高。
虽然不同的数据库类型有与之对应的解析模块,但是服务器在通过数据备份还原模块对不同的数据库进行数据备份时,备份的流程是一样的,备份流程具体如下:
1)查询需要备份的表列表;表列表指待访问数据库中有多少张表以及哪些表需要备份;
2)查询每张表的字段信息;
3)根据表的字段信息,生成备份文件的表头;其中,备份文件的名字为表的名字;
4)分页读出表内容,将读取的表内容写入文件中。
应当知道的是,服务器可对备份的数据进行定期删除,以提高存储利用率。
本申请实施例通过数据备份还原模块根据待访问的数据库类型确定对应的解析模块,使得针对性的对待访问的数据库进行解析,并根据解析后获得的数据库表信息生成备份文件。在这个过程中,数据备份还原模块能针对不同的数据库类型,生成对应的备份文件,并且在不需要登录数据库客户端的情况下实现对数据库的备份,提高用户对数据库的可操作性和操作安全性。
在一些实施例中,数据库表内容包括内容属性,内容属性包括可读属性和不可读属性;服务器通过数据备份还原模块将数据库表内容写入备份文件,包括:服务器通过数据备份还原模块根据不可读属性对应的表内容生成二进制文件和二进制文件的文件标识;服务器通过数据备份还原模块将文件标识和可读属性对应的表内容写入备份文件。
在具体实施过程中,数据库表内容指数据库表中存储的数据字段和每一个字段对应的数据。例如,一个学生表中,表的首行记录“学生ID、学生姓名、学生年龄、学生班级、学生住址”等数据字段信息,其它行记录每一个数据字段对应的数据,如:“001、李x、13、2班、xx街道”为上述字段对应的数据。因此,在服务器通过数据备份还原模块将数据库表内容写入备份文件时,可以是将数据库表内容逐行写入备份文件中,即,先将数据库表的数据字段写入备份文件,再逐行对应写入每个数据字段对应的内容。还可以先将数据库表的数据字段写入备份文件,然后将数据字段对应的数据作为整体一起写入备份文件。
由于数据库中存在一些比较特殊的数据类型,例如:二进制数据、MySQL和Oracle的Blob类型的数据等,这些数据类型的属性为不可读,因此不能将其直接写入备份文件中。因此,在服务器通过数据备份还原模块生成每一个表的备份文件时,将每一个表中不可读的数据生成二进制文件。并且,在存在多个备份文件和多个二进制文件时,将多个备份文件放在一个备份文件夹内,将多个二进制文件放在一个二进制文件夹内,而备份文件夹和二进制文件夹在同一个目录下。
为了关联备份文件和二进制文件,在生成二进制文件的同时,服务器通过数据备份还原模块随机生成一个唯一标识作为该二进制文件的文件标识,并将该文件标识写入二进制文件对应的备份文件中,以此建立二进制文件和备份文件的关联关系。便于后续需要对该备份文件进行还原时,能找到与该备份文件对应的二进制文件,使得备份数据能正常写入数据库。
本申请实施例通过数据备份还原模块将数据库表内容分类为可读内容和不可读内容,并分别生成对应的文件。在这个过程中,由于不可读内容不能直接写入备份文件中,因此将不可读内容生成单独的二进制文件进行存放,而在备份文件中存储二进制文件的标识,以此将数据库表内容中的可读内容和不可读内容建立连接关系。保证了数据库备份的完整性和准确性。
在一些实施例中,在数据备份还原模块根据所述解密后的登录信息对待访问数据库进行访问之后,该方法还包括:服务器通过数据备份还原模块获取数据库还原请求;服务器通过数据备份还原模块根据待访问的数据库类型和数据库还原请求读取数据库类型对应的历史备份数据;服务器通过数据备份还原模块将历史备份数据写入待访问数据库。
在具体实施过程中,当数据库中某些表遭到破坏时,需要执行数据库还原操作对数据库中遭到破坏的表进行还原,以保证数据库能正常使用。因此,在服务器通过数据备份还原模块登录待访问数据库后,可对待访问数据库执行数据库还原操作,因此,服务器通过数据备份还原模块根据获取到的数据库还原请求和待访问的数据库类型对待访问的数据库执行还原操作。应当知道的是,在执行还原操作时,已经确定了待访问数据库的类型。
数据库还原请求包括待还原的数据库表名和历史备份路径,服务器通过数据备份还原模块根据历史备份路径和待还原的数据库表名读取数据库类型对应的历史备份数据,并将读取的历史备份数据写入待访问的数据库。
应当知道的是,在执行还原操作时,可执行全量还原,也可执行选择还原,全量还原指对数据库中的所有表都进行还原,选择还原指只对数据库中出现问题的表进行还原。具体如何还原可根据实际情况进行选择,本申请对此不作具体限定。
虽然需要根据待访问的数据库类型进行还原,但是服务器在通过数据备份还原模块对不同的数据库进行数据还原时,还原的流程是一样的,还原流程具体如下:
1)读取需要还原的历史备份数据;
2)读取历史备份数据的表头,确认需要还原到数据库表中的数据字段和类型;
3)读取历史备份数据的数据信息,并将读取的数据信息写回待访问的数据库中。
本申请实施例通过数据备份还原模块根据待访问的数据库类型确定需要进行还原的历史备份数据,并将历史备份数据写回待访问的数据库。在这个过程中,在不需要登录数据库客户端的情况下通过数据备份还原模块实现对数据库的还原,提高用户对数据库的可操作性和操作安全性。
在一些实施例中,历史备份数据包括多个历史备份文件和多个历史二进制文件;数据备份还原模块将历史备份数据写入待访问数据库,包括:服务器通过数据备份还原模块根据历史备份文件的文件标识确定多个历史二进制文件中与文件标识对应的目标历史二进制文件;其中,历史二进制文件根据不可读属性对应的历史表内容生成;服务器通过数据备份还原模块将历史备份文件和与目标历史二进制文件写入待访问数据库。
在具体实施过程中,由于在执行历史备份时,将可读属性的数据生成历史备份文件,将不可读属性的数据生成历史二进制文件,历史备份文件和历史二进制文件组成历史备份数据。因此,在执行还原操作时,需要根据文件标识找到与历史备份文件对应的历史二进制文件,并将历史备份文件和历史二进制文件一同写入对应的数据库表中,完成对待访问的数据库的还原。
本申请实施例在数据备份还原模块将历史备份数据写回数据库时,需要根据历史备份文件标识确定与历史备份文件对应的历史二进制文件,以此保证写回数据库的数据完整性和准确性。
图2为本申请实施例提供的一种数据库访问装置结构示意图,如图2所示,该装置包括:获取单元201、确定单元202和访问单元203,其中,
获取单元201,用于通过业务系统的数据备份还原模块获取数据库访问请求;其中,数据库访问请求包括待访问的数据库类型;待访问的数据库类型根据配置文件获得;确定单元202,用于通过数据备份还原模块根据待访问的数据库类型确定待访问数据库的加密登录信息;访问单元203,用于通过数据备份还原模块解密加密登录信息,获得解密后的登录信息,并根据解密后的登录信息对待访问数据库进行访问。
在上述实施例的基础上,该装置还包括数据备份单元,用于通过数据备份还原模块获取数据库备份请求;通过数据备份还原模块根据待访问的数据库类型和数据库备份请求调用对应的解析模块对待访问数据库进行解析,获得待访问数据库的数据库表信息;其中,数据库表信息包括数据库表名和数据库表内容;通过数据备份还原模块根据数据库表名创建备份文件,并将数据库表内容写入所述备份文件。
在上述实施例的基础上,数据备份单元具体用于通过数据备份还原模块根据不可读属性对应的表内容生成二进制文件和二进制文件的文件标识;通过数据备份还原模块将文件标识和可读属性对应的表内容写入备份文件。
在上述实施例的基础上,该装置还包括数据还原单元,用于通过数据备份还原模块获取数据库还原请求;通过数据备份还原模块根据待访问的数据库类型和数据库还原请求读取数据库类型对应的历史备份数据;通过数据备份还原模块将历史备份数据写入待访问数据库。
在上述实施例的基础上,数据还原单元具体用于通过数据备份还原模块根据历史备份文件的文件标识确定多个历史二进制文件中与文件标识对应的目标历史二进制文件;其中,历史二进制文件根据不可读属性对应的历史表内容生成;通过数据备份还原模块将历史备份文件和与目标历史二进制文件写入待访问数据库。
图3为本申请实施例提供的电子设备结构示意图,如图3所示,所述电子设备,包括处理器(processor)301、存储器(memory)302和总线303;其中,所述处理器301和存储器302通过所述总线303完成相互间的通信。所述处理器301用于调用所述存储器302中的程序指令,以执行上述各方法实施例所提供的方法。
处理器301可以是一种集成电路芯片,具有信号处理能力。上述处理器301可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(NetworkProcessor,NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。其可以实现或者执行本申请实施例中公开的各种方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器302可以包括但不限于随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)等。
本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:通过业务系统的数据备份还原模块获取数据库访问请求;其中,数据库访问请求包括待访问的数据库类型;待访问的数据库类型根据配置文件获得;数据备份还原模块根据待访问的数据库类型确定待访问数据库的加密登录信息;数据备份还原模块解密加密登录信息,获得解密后的登录信息,并根据解密后的登录信息对待访问数据库进行访问。
本实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述各方法实施例所提供的方法,例如包括:通过业务系统的数据备份还原模块获取数据库访问请求;其中,数据库访问请求包括待访问的数据库类型;待访问的数据库类型根据配置文件获得;数据备份还原模块根据待访问的数据库类型确定待访问数据库的加密登录信息;数据备份还原模块解密加密登录信息,获得解密后的登录信息,并根据解密后的登录信息对待访问数据库进行访问。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (10)

1.一种数据库访问方法,其特征在于,所述方法包括:
通过业务系统的数据备份还原模块获取数据库访问请求;其中,所述数据库访问请求包括待访问的数据库类型;所述待访问的数据库类型根据配置文件获得;
所述数据备份还原模块根据所述待访问的数据库类型确定所述待访问数据库的加密登录信息;
所述数据备份还原模块解密所述加密登录信息,获得解密后的登录信息,并根据所述解密后的登录信息对所述待访问数据库进行访问。
2.根据权利要求1所述的方法,其特征在于,在所述数据备份还原模块根据所述解密后的登录信息对所述待访问数据库进行访问之后,所述方法还包括:
所述数据备份还原模块获取数据库备份请求;
所述数据备份还原模块根据所述待访问的数据库类型和所述数据库备份请求调用对应的解析模块对所述待访问数据库进行解析,获得所述待访问数据库的数据库表信息;其中,所述数据库表信息包括数据库表名和数据库表内容;
所述数据备份还原模块根据所述数据库表名创建备份文件,并将所述数据库表内容写入所述备份文件。
3.根据权利要求2所述的方法,其特征在于,所述数据库表内容包括内容属性,所述内容属性包括可读属性和不可读属性;所述数据备份还原模块将所述数据库表内容写入所述备份文件,包括:
所述数据备份还原模块根据所述不可读属性对应的表内容生成二进制文件和所述二进制文件的文件标识;
所述数据备份还原模块将所述文件标识和所述可读属性对应的表内容写入所述备份文件。
4.根据权利要求1所述的方法,其特征在于,在所述数据备份还原模块根据所述解密后的登录信息对所述待访问数据库进行访问之后,所述方法还包括:
所述数据备份还原模块获取数据库还原请求;
所述数据备份还原模块根据所述待访问的数据库类型和所述数据库还原请求读取所述数据库类型对应的历史备份数据;
所述数据备份还原模块将所述历史备份数据写入所述待访问数据库。
5.根据权利要求4所述的方法,其特征在于,所述历史备份数据包括多个历史备份文件和多个历史二进制文件;所述数据备份还原模块将所述历史备份数据写入所述待访问数据库,包括:
所述数据备份还原模块根据所述历史备份文件的文件标识确定所述多个历史二进制文件中与所述文件标识对应的目标历史二进制文件;其中,所述历史二进制文件根据不可读属性对应的历史表内容生成;
所述数据备份还原模块将所述历史备份文件和与所述目标历史二进制文件写入所述待访问数据库。
6.一种数据库访问装置,其特征在于,所述装置包括:
获取单元,用于通过业务系统的数据备份还原模块获取数据库访问请求;其中,所述数据库访问请求包括待访问的数据库类型;所述待访问的数据库类型根据配置文件获得;
确定单元,用于通过所述数据备份还原模块根据所述待访问的数据库类型确定所述待访问数据库的加密登录信息;
访问单元,用于通过所述数据备份还原模块解密所述加密登录信息,获得解密后的登录信息,并根据所述解密后的登录信息对所述待访问数据库进行访问。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括数据备份单元,用于
通过所述数据备份还原模块获取数据库备份请求;
通过所述数据备份还原模块根据所述待访问的数据库类型和所述数据库备份请求调用对应的解析模块对所述待访问数据库进行解析,获得所述待访问数据库的数据库表信息;其中,所述数据库表信息包括数据库表名和数据库表内容;
通过所述数据备份还原模块根据所述数据库表名创建备份文件,并将所述数据库表内容写入所述备份文件。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括数据还原单元,用于
通过所述数据备份还原模块获取数据库还原请求;
通过所述数据备份还原模块根据所述待访问的数据库类型和所述数据库还原请求读取所述数据库类型对应的历史备份数据;
通过所述数据备份还原模块将所述历史备份数据写入所述待访问数据库。
9.一种电子设备,其特征在于,包括:处理器和存储器,所述存储器存储有所述处理器可执行的机器可读指令,所述机器可读指令被所述处理器执行时执行如权利要求1至5任一所述的方法。
10.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至5任一所述的方法。
CN202310686182.1A 2023-06-09 2023-06-09 一种数据库访问方法、装置、电子设备及存储介质 Pending CN116643926A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310686182.1A CN116643926A (zh) 2023-06-09 2023-06-09 一种数据库访问方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310686182.1A CN116643926A (zh) 2023-06-09 2023-06-09 一种数据库访问方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN116643926A true CN116643926A (zh) 2023-08-25

Family

ID=87624621

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310686182.1A Pending CN116643926A (zh) 2023-06-09 2023-06-09 一种数据库访问方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN116643926A (zh)

Similar Documents

Publication Publication Date Title
CN108446407B (zh) 基于区块链的数据库审计方法和装置
CN112527414B (zh) 一种基于前端的数据处理方法、装置、设备及存储介质
CN110662184A (zh) 信息推送方法、装置、计算机设备及存储介质
CN104572781B (zh) 一种交易日志产生方法和装置
CN111475376A (zh) 处理测试数据的方法、装置、计算机设备和存储介质
CN113704790A (zh) 一种异常日志信息汇总方法及计算机设备
CN112650753A (zh) 一种日志管理方法、装置、系统、设备及可读存储介质
CN111737227A (zh) 数据修改方法及系统
CN111858605A (zh) 数据库自动化审计方法、系统、设备及存储介质
CN112035471A (zh) 一种事务处理方法及计算机设备
CN109284331B (zh) 基于业务数据资源的制证信息获取方法、终端设备及介质
CN115858488A (zh) 基于数据治理的平行迁移方法、装置及可读介质
CN113157487A (zh) 数据恢复方法及其设备
CN111782605A (zh) 一种芯片卡文件管理方法、装置、终端及存储介质
CN116643926A (zh) 一种数据库访问方法、装置、电子设备及存储介质
CN113132241B (zh) Acl模板动态配置方法及装置
CN115242872A (zh) 数据处理方法、装置、计算机设备及可读存储介质
JP2013235408A (ja) ログ管理システム、ログ管理サーバ及びプログラム
CN114006819A (zh) 一种检测策略生成及装置、数据传输方法及装置
CN112800130A (zh) 数据上链方法、系统、装置、设备和存储介质
CN113420003A (zh) 一种数据交互日志的处理方法、装置、设备及介质
CN113656795A (zh) 窗口操作行为审计方法及系统
CN111460436A (zh) 一种基于区块链的非结构化数据操作方法和系统
CN111404662B (zh) 一种数据处理方法及装置
US20210382868A1 (en) Data management system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination