CN113608932B - 数据库演练方法、装置、设备及存储介质 - Google Patents
数据库演练方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN113608932B CN113608932B CN202111174019.4A CN202111174019A CN113608932B CN 113608932 B CN113608932 B CN 113608932B CN 202111174019 A CN202111174019 A CN 202111174019A CN 113608932 B CN113608932 B CN 113608932B
- Authority
- CN
- China
- Prior art keywords
- drilling
- network configuration
- oracle rac
- equipment
- database
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/211—Schema design and management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Quality & Reliability (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种数据库演练方法、装置、设备及存储介质。该方法包括将待演练备份点恢复至预设目标环境中,根据预设目标环境的类型确定对应的演练策略;扫描预设目标环境中的Oracle RAC集群的存储设备;根据演练策略对存储设备进行设备权限修正,根据演练策略对Oracle RAC集群进行网络配置;对进行权限修正及网络配置的Oracle RAC集群进行数据演练。由于本发明是根据预设目标环境类型确定对应的演练策略,根据演练策略对存储设备进行设备权限修正和对Oracle RAC集群进行网络配置,相对于现有的在隔离网络中进行数据库演练的方式,本发明上述方式能够自动完成权限修正及网络配置,提高数据库演练的效率。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种数据库演练方法、装置、设备及存储介质。
背景技术
由于Oracle RAC的数据库和网络配置耦合的很紧密,系统部署完毕之后,如果网络配置发生改变,就会导致数据库业务启动失败。所以,Oracle RAC做完整机备份,在做容灾演练,验证备份数据准确性的时候,通常只能用以下方式:准备一个隔离的网络,然后把整机备份的数据恢复到该网络的主机中,网络配置成和原来的一样(由于是隔离网络,不会和原来的网络配置有冲突),再在隔离网络中验证业务数据;使用上述方式的时候,需要一个隔离网络,需要耗费很多资源,并且隔离网络里面的Oracle RAC和原来网络的其他业务系统(如OA系统)相隔离,导致其他的业务系统无法访问隔离网络中的Oracle RAC的数据,验证数据也不方便。
另外,Oracle RAC的数据库还受主机底层存储的设备名、存储设备的权限影响,当把整机备份的数据恢复到其他主机的时候,存储的设备名、存储设备的权限都会发生改变,需要人工修正,技术难度大,遇到问题不易排查。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供了一种数据库演练方法、装置、设备及存储介质,旨在解决现有技术需要在隔离网络中进行数据库演练导致的数据库演练效率不高的技术问题。
为实现上述目的,本发明提供了一种数据库演练方法,所述方法包括以下步骤:
将待演练备份点恢复至预设目标环境中,并根据所述预设目标环境的类型确定对应的演练策略;
扫描所述预设目标环境中的Oracle RAC集群的存储设备;
根据所述演练策略对所述存储设备进行设备权限修正,并根据所述演练策略对所述Oracle RAC集群进行网络配置;
对进行权限修正及网络配置后的Oracle RAC集群进行数据演练。
可选地,所述预设目标环境的类型为单节点不带共享存储;
所述根据所述演练策略对所述存储设备进行设备权限修正,并根据所述演练策略对所述Oracle RAC集群进行网络配置的步骤,包括:
根据所述演练策略获取所述待演练备份点中的存储设备权限信息;
根据所述存储设备权限信息对所述存储设备进行设备权限修正;
根据所述演练策略对所述Oracle RAC集群进行网络配置。
可选地,所述根据所述演练策略对所述Oracle RAC集群进行网络配置的步骤,包括:
获取用户设定的目标网络配置信息;
根据所述目标网络配置信息对所述Oracle RAC集群中的网卡参数信息进行修正;
根据所述目标网络配置信息确定网段信息,并将所述网段信息添加至所述OracleRAC集群的配置文件中。
可选地,所述预设目标环境的类型为单节点带共享存储;
所述根据所述演练策略对所述存储设备进行设备权限修正,并根据所述演练策略对所述Oracle RAC集群进行网络配置的步骤,包括:
根据所述演练策略获取所述待演练备份点中的存储设备权限信息;
根据所述存储设备权限信息对所述存储设备进行设备权限修正;
通过multipath生成多路径设备,并提取所述多路径设备的公共前缀;
根据所述公共前缀对所述多路径设备的路径信息进行修正,并根据所述演练策略对所述Oracle RAC集群进行网络配置。
可选地,所述预设目标环境的类型为多节点带共享存储;
所述根据所述演练策略对所述存储设备进行设备权限修正,并根据所述演练策略对所述Oracle RAC集群进行网络配置的步骤,包括:
根据所述演练策略获取所述待演练备份点中各节点的存储设备权限信息;
根据所述存储设备权限信息对所述待演练备份点中各节点对应的存储设备进行设备权限修正;
根据所述演练策略对所述Oracle RAC集群中的各节点进行网络配置。
可选地,所述根据所述演练策略对所述Oracle RAC集群中的各节点进行网络配置的步骤,包括:
获取目标网络配置节点,并对所述目标网络配置节点进行网络配置,并启动所述目标网络配置节点上的Oracle RAC集群业务;
对Oracle RAC集群的其他节点进行网络配置,并判断通过Public网卡和Private网卡是否能访问所述目标网络配置节点上的Oracle RAC集群业务;
在通过Public网卡和Private网卡能访问所述目标网络配置节点上的Oracle RAC集群业务时,修正其他节点的VIP,并把节点的网段信息添加至Oracle RAC集群的配置文件中。
可选地,所述扫描所述预设目标环境中的Oracle RAC集群的存储设备的步骤,包括:
获取所述预设目标环境中的目标存储设备;
判断所述目标存储设备的目标数据块是否为asm头部数据块;
在所述目标存储设备的目标数据块为asm头部数据块时,判定所述目标存储设备为Oracle RAC集群的存储设备。
此外,为实现上述目的,本发明还提供一种数据库演练装置,所述装置包括:
恢复模块,用于将待演练备份点恢复至预设目标环境中,并根据所述预设目标环境的类型确定对应的演练策略;
扫描模块,用于扫描所述预设目标环境中的Oracle RAC集群的存储设备;
权限修正模块,用于根据所述演练策略对所述存储设备进行设备权限修正,并根据所述演练策略对所述Oracle RAC集群进行网络配置;
演练模块,用于对进行权限修正及网络配置后的Oracle RAC集群进行数据演练。
此外,为实现上述目的,本发明还提出一种数据库演练设备,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据库演练程序,所述数据库演练程序配置为实现如上文所述的数据库演练方法的步骤。
此外,为实现上述目的,本发明还提出一种存储介质,所述存储介质上存储有数据库演练程序,所述数据库演练程序被处理器执行时实现如上文所述的数据库演练方法的步骤。
本发明将待演练备份点恢复至预设目标环境中,并根据所述预设目标环境的类型确定对应的演练策略;扫描所述预设目标环境中的Oracle RAC集群的存储设备;根据所述演练策略对所述存储设备进行设备权限修正,并根据所述演练策略对所述Oracle RAC集群进行网络配置;对进行权限修正及网络配置后的Oracle RAC集群进行数据演练。由于本发明是根据预设目标环境的类型确定对应的演练策略,根据所述演练策略对存储设备进行设备权限修正和对Oracle RAC集群进行网络配置,相对于现有的需要在隔离网络中进行数据库演练的方式,本发明上述方式能够将待演练备份点恢复至任意网络主机中,且可以自动完成权限修正及网络配置,提高数据库演练的效率。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的数据库演练设备的结构示意图;
图2为本发明数据库演练方法第一实施例的流程示意图;
图3为本发明数据库演练方法第二实施例的流程示意图;
图4为本发明数据库演练装置第一实施例的结构框图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
参照图1,图1为本发明实施例方案涉及的硬件运行环境的数据库演练设备结构示意图。
如图1所示,该数据库演练设备可以包括:处理器1001,例如中央处理器(CentralProcessing Unit,CPU),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(Wireless-Fidelity,WI-FI)接口)。存储器1005可以是高速的随机存取存储器(RandomAccess Memory,RAM),也可以是稳定的非易失性存储器(Non-Volatile Memory,NVM),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的结构并不构成对数据库演练设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及数据库演练程序。
在图1所示的数据库演练设备中,网络接口1004主要用于与网络服务器进行数据通信;用户接口1003主要用于与用户进行数据交互;本发明数据库演练设备中的处理器1001、存储器1005可以设置在数据库演练设备中,所述数据库演练设备通过处理器1001调用存储器1005中存储的数据库演练程序,并执行本发明实施例提供的数据库演练方法。
基于上述数据库演练设备,本发明实施例提供了一种数据库演练方法,参照图2,图2为本发明数据库演练方法第一实施例的流程示意图。
本实施例中,所述数据库演练方法包括以下步骤:
步骤S10:将待演练备份点恢复至预设目标环境中,并根据所述预设目标环境的类型确定对应的演练策略。
需要说明的是,本实施例的执行主体可以是一种具有数据处理、网络通信以及程序运行功能的计算服务设备,例如手机、平板电脑、个人电脑等,或者是一种能够实现上述功能的电子设备或数据库演练设备。以下以所述数据库演练设备为例,对本实施例及下述各实施例进行说明。
需要说明的是,所述待演练备份点可以是对数据库进行演练时,对源主机做整机备份时的备份点。所述预设目标环境可以是对数据库进行演练的环境。所述预设目标环境的类型可包括单节点不带共享存储、单节点带共享存储以及多节点带共享存储。所述演练策略为各个不同的预设目标环境的类型对应的演练策略。
应理解的是,由于原Oracle RAC是多个计算节点连接到一个共享存储,所以在做整机备份的时候(事先每个节点都安装了代理程序),代理程序会选择任意一个计算节点备份本地存储和共享存储的数据,剩余的节点只需要备份本地存储的数据,备份完毕之后就会形成备份点。例如,假设一共有a、b、c三个计算节点,再加一个共享存储。备份的时候,选择节点b备份本地存储和共享存储的数据,a和c只需备份本地存储的数据。识别共享存储的方法是在每个节点上执行“asmcmd lsdsk -p”命令,执行结果中的设备名对应的存储就是共享存储,而每个节点上排除共享存储之后剩下的就是本地存储。演练的时候,对于单节点不带共享存储,即目标环境只有一个计算节点,使用的都是本地存储(没有使用共享存储),可以把a、b、c中任意一个节点(这里称为源节点)的本地存储数据还原到目标计算节点的本地存储中,同时还要把共享存储的数据还原到目标计算机的其他本地存储中。目标计算节点上本地存储的硬盘个数要大于或等于源节点本地存储的硬盘个数加上共享存储硬盘的个数,例如,源节点a本地存储有1块盘,共享存储有3块盘,那么目标主机的本地存储至少需要4块盘。这种方式需要的硬件资源少,简单方便,由于没有使用共享存储,不能做节点扩展。对于单节点带共享存储,即目标环境只有一个计算节点,并且挂载了共享存储,可以把a、b、c中任意一个节点的本地存储数据还原到目标节点的本地存储,把共享存储的数据还原到目标节点的共享存储。这个场景需要的硬件资源要多一点,后续可以随时扩展节点。对于多节点带共享存储,即目标环境的节点数小于或等于源主机的节点数,并且都连接到了共享存储上,可以把任意个数个节点的本地存储还原到目标环境对应的节点上,把共享存储的数据还原到目标节点的共享存储。这里需要的硬件资源最多,但是演练的目标环境非常接近源主机环境。在做数据库演练的时候,可以选择上述任一场景来进行演练,本实施例在此不加以限制。
步骤S20:扫描所述预设目标环境中的Oracle RAC集群的存储设备。
需要说明的是,所述扫描所述预设目标环境中的Oracle RAC集群的存储设备可以是扫描所述预设目标环境中的全部存储设备,并判断是否为Oracle RAC集群的存储设备。
进一步的,所述步骤S20包括:获取所述预设目标环境中的目标存储设备;判断所述目标存储设备的目标数据块是否为asm头部数据块;在所述目标存储设备的目标数据块为asm头部数据块时,判定所述目标存储设备为Oracle RAC集群的存储设备。
需要说明的是,所述目标存储设备可以是所述预设目标环境中的全部存储设备。所述目标数据块可以是所述目标存储设备头部的数据块,以及存储设备上每个分区的头部数据块。
在具体实施中,可以添加一个udev规则用来进行设备的识别,例如,ACTION=="add", SUBSYSTEM=="block ", RUN+="/sbin/set_permission",可以通过该规则检查每个块设备(即存储设备,在操作系统看来,不管是单独的整块硬盘还是硬盘上的分区,都属于块设备)前面一个数据块是否是asm头部数据块,如果是的话,数据块中会带有“ORCLDISK”字符串,同时数据块中还包含有asm磁盘组、故障组、磁盘名等信息,需要对全部的块设备进行逐一检查、判断。
步骤S30:根据所述演练策略对所述存储设备进行设备权限修正,并根据所述演练策略对所述Oracle RAC集群进行网络配置。
应理解的是,在不同的环境中节点的数量和是否带共享存储等信息不同,因此,对存储设备进行设备权限修正以及网络配置时采用的方式根据环境的不同而存在差异。
进一步的,所述预设目标环境的类型为单节点不带共享存储时,所述步骤S30包括步骤:根据所述演练策略获取所述待演练备份点中的存储设备权限信息;根据所述存储设备权限信息对所述存储设备进行设备权限修正;根据所述演练策略对所述Oracle RAC集群进行网络配置。
需要说明的是,所述存储设备权限信息就是原Oracle RAC系统存储设备的权限信息,可以是设备的owner和group,可以从备份点中的udev规则文件中获得。根据所述存储设备权限信息对所述存储设备进行设备权限修正可以是将目标主机上的Oracle RAC存储设备的owner、group改成从原udev规则文件(也就是备份中的udev规则文件)中获取得到的存储设备权限信息中的owner、group对应的值。根据所述演练策略对所述Oracle RAC集群进行网络配置可以是获取用户设定的网络配置信息,将所述Oracle RAC集群中的网络设置信息修改为用户设置的网络配置信息。
进一步的,所述根据所述演练策略对所述Oracle RAC集群进行网络配置的步骤,包括:获取用户设定的目标网络配置信息;根据所述目标网络配置信息对所述Oracle RAC集群中的网卡参数信息进行修正;根据所述目标网络配置信息确定网段信息,并将所述网段信息添加至所述Oracle RAC集群的配置文件中。
需要说明的是,所述目标网络配置信息包括网卡的类型(Public网卡或者Private网卡)、网卡的IP地址和子网掩码、集群的VIP和Scan IP。根据所述目标网络配置信息对所述Oracle RAC集群中的网卡参数信息进行修正可以是将所述Oracle RAC集群中的网卡参数信息修改为用户指定的网卡信息。
在具体实施中,在目标环境为单节点不带共享存储时,目标环境上没有外接存储,都是本地存储,修正磁盘权限的时候不需要关注多路径设备。在修正之前,首先在/etc/udev/rules.d目录下枚举所有的udev规则文件(这些文件都是从备份点还原过来的,里面保存有原Oracle RAC存储设备的权限信息),获得原Oracle RAC的存储设备的权限信息(也就是设备的owner和group),这些规则的文件名不固定,但里面的内容一般都是修改存储设备权限的操作,如:KERNEL=="dm*", OWNER="grid", GROUP="asmadmin", MODE="0660"从规则里面可以获得存储设备的owner、group,例如,当前的owner是grid、group是asmadmin。修正的时候,先删除这些规则,再新加一个规则,例如如下:ACTION=="add", SUBSYSTEM=="block ", RUN+="/sbin/set_permission"这个规则执行的操作是系统每检测到有块设备(即存储设备)插入的时候,就会调用“/sbin/set_permission”做权限修正操作。“/sbin/set_permission”是本实施例的其中一个实现程序,主要完成以下操作:判断一个块设备是不是Oracle RAC存储设备,具体实施方式为检查每个块设备前面一个数据块是否是asm头部数据块,如果是的话,数据块中会带有“ORCLDISK”字符串,同时数据块中还包含有asm磁盘组、故障组、磁盘名等信息。如果是Oracle RAC存储设备,就把该设备的owner、group改成前面获取到的owner、group,即将该设备的owner改为grid、group改为asmadmin。把所有的Oracle RAC存储设备名保存起来,待所有Oracle RAC存储设备的权限修正完毕之后,提取这些存储设备名的公共前缀,通过gpnptool命令把设备名前缀保存到$GRID_HOME/gpnp/<主机名>/profiles/peer/profile.xml的“DiscoveryString”字段中。例如系统中OracleRAC存储设备名为:/dev/sdb、/dev/sdc、/dev/sdaa、/dev/sdab,则公共前缀是“/dev/sd*”,通过gpnptool命令将公共前缀“/dev/sd*”保存到配置文件中,这样Oracle RAC系统就能知道当前系统中哪些存储设备存储有Oracle RAC业务数据。至此,完成对所述存储设备的设备权限修正。接下来开始对Oracle RAC集群进行网络配置,例如,在具体实施中,通过gpnptool命令从$GRID_HOME/gpnp/<主机名>/profiles/peer/profile.xml配置文件中获得Public和Private网络的网卡设备名和ID,例如分别是“ens192”、“net1”和“ens224”、“net2”。此处获取的是原Oracle RAC业务系统中Public网络、Private网络的网卡设备名和ID。获取管理员设定的网络配置信息。假设管理员指定了MAC地址为“00:0c:29:c3:52:d3”的网卡作为Public网络,IP地址是“172.17.9.30/16”,MAC地址为“00:0c:29:c3:52:dd”的网卡作为Private网络,IP地址是“192.168.9.30/24”。由于把操作系统还原到其他硬件平台的主机上的时候,网卡的设备名可能会发生改变,需要做修正。修正方法可以是先枚举系统的网卡,根据网卡的MAC地址获得对应的网卡设备名,假设是eth0。然后修改系统的udev规则,根据上述用户设置的网络配置信息,把MAC为“00:0c:29:c3:52:d3”的网卡命名为ens192,把MAC为“00:0c:29:c3:52:dd”的网卡命名为ens224,对应需要修改这2个网卡的配置文件,修正网卡的IP地址及掩码。并调用对应的命令把网段信息写入到$GRID_HOME/gpnp/<主机名>/profiles/peer/profile.xml配置文件中。例如,可以调用命令gpnptooledit -net1:net_ip='172.17.0.0'和gpnptool edit -net2:net_ip='192.168.9.0'把网段信息写入到$GRID_HOME/gpnp/<主机名>/profiles/peer/profile.xml配置文件中。
进一步的,所述预设目标环境的类型为单节点带共享存储时,所述步骤S30包括:根据所述演练策略获取所述待演练备份点中的存储设备权限信息;根据所述存储设备权限信息对所述存储设备进行设备权限修正;通过multipath生成多路径设备,并提取所述多路径设备的公共前缀;根据所述公共前缀对所述多路径设备的路径信息进行修正,并根据所述演练策略对所述Oracle RAC集群进行网络配置。
需要说明的是,若目标场景为单节点带共享存储,除了要执行单节点不带共享存储的存储权限修正之外,由于计算节点外挂了共享存储,为了避免单点故障,还需要做额外的操作。即通过multipath生成多路径设备,并提取所述多路径设备的公共前缀;根据所述公共前缀对所述多路径设备的路径信息进行修正,以避免单路径故障时无法访问存储设备的问题。
在具体实施中,启动系统多路径软件multipath对应的服务,若没有多路径软件multipath,则需要从预置程序库获取并安装,以生成多路径设备。每生成一个多路径设备,系统的udev服务也会执行上述的添加的udev规则,调用“/sbin/set_permission”做权限修正操作。执行识别设备类型、修改权限、提取公共前缀等操作,由于同时存在多种前缀,例如,“/dev/sd*”、“/dev/mpath*”,则需要优先使用多路径前缀,即把“/dev/sd*”从配置文件中删掉,把“/dev/mpath*”添加至配置文件中,避免访问路径单点故障问题。所述根据所述演练策略对所述Oracle RAC集群进行网络配置的步骤可参照上述对单节点不带共享存储的网络配置方法,本实施例在此不再赘述。
步骤S40:对进行权限修正及网络配置后的Oracle RAC集群进行数据演练。
需要说明的是,对进行权限修正及网络配置后的Oracle RAC集群进行数据演练可以是在进行权限修正及网络配置后重启集群服务,通过业务系统访问演练的数据库数据进行数据的准确性验证。
在具体实施中,在进行权限修正及网络配置后,重启Oracle RAC所有的服务,正常启动集群服务,通过srvctl命令来修正节点的VIP和集群的Scan IP。修正完VIP和Scan IP,再次重启集群服务和数据库服务,业务系统通过修正后的Scan IP地址访问到演练的数据库数据,验证数据的准确性。
本实施例将待演练备份点恢复至预设目标环境中,并根据所述预设目标环境的类型确定对应的演练策略;扫描所述预设目标环境中的Oracle RAC集群的存储设备;根据所述演练策略对所述存储设备进行设备权限修正,并根据所述演练策略对所述Oracle RAC集群进行网络配置;对进行权限修正及网络配置后的Oracle RAC集群进行数据演练。由于本实施例是根据预设目标环境的类型确定对应的演练策略,根据所述演练策略对存储设备进行设备权限修正和对Oracle RAC集群进行网络配置,相对于现有的需要在隔离网络中进行数据库演练的方式,本实施例上述方式能够将待演练备份点恢复至任意网络主机中,且可以自动完成权限修正及网络配置,提高数据库演练的效率
参考图3,图3为本发明数据库演练方法第二实施例的流程示意图。
基于上述第一实施例,在本实施例中,所述预设目标环境的类型为多节点带共享存储时,所述步骤S30包括:
步骤S301:根据所述演练策略获取所述待演练备份点中各节点的存储设备权限信息。
需要说明的是,所述存储设备权限信息就是原Oracle RAC系统存储设备的权限信息,可以是设备的owner和group,可以从备份点中的udev规则文件中获得。
步骤S302:根据所述存储设备权限信息对所述待演练备份点中各节点对应的存储设备进行设备权限修正。
需要说明的是,根据所述存储设备权限信息对所述待演练备份点中各节点对应的存储设备进行设备权限修正可以是将所述各节点对应的存储设备的owner、group改成从原udev规则文件(也就是待演练备份点中的udev规则文件)中获取得到的存储设备权限信息中的owner、group对应的值。
具体实施方式可参照上述第一实施例中的单节点带共享存储的设备权限修正步骤,不同点在于本实施例中的设备权限修正为对集群中的各个节点均进行设备权限修正。
步骤S303:根据所述演练策略对所述Oracle RAC集群中的各节点进行网络配置。
应理解的是,正常情况下,Oracle RAC集群的所有的Public网卡会连接到同一个交换机,所有的Private网卡会接到同一个交换机,为了避免在Public网卡和Private网卡连接交换机出错时,能够自动进行修正,当目标环境为多节点带共享存储时,需要随机选择一个节点作为优先修正网络配置节点,并写入到各节点配置文件中。在Public网卡和Private网卡连接交换机出错时,根据所述优先修正网络配置节点中的Public网卡、Private网卡与交换机的连接关系对集群中其他各节点中的网卡连接关系进行修正。比如,i、j、k三个节点,j为优先修正网络配置节点,j的Public网卡连接到了A交换机,Private网卡连接到了B交换机,i和k的Public网卡连接到了B交换机,Private网卡连接到了A交换机。在配置网络的时候,优先配置好节点j的网络,启动集群服务,然后参照节点j的网卡连接关系,把节点i、k连接A交换机的网卡调整为Public网卡(ip地址和子网掩码也要相应调整),把连接B交换机的网卡调整为Private网卡。这样i、k两个节点上的业务才能正常启动。
进一步的,所述步骤S303可包括:获取目标网络配置节点,并对所述目标网络配置节点进行网络配置,并启动所述目标网络配置节点上的Oracle RAC集群业务;对OracleRAC集群的其他节点进行网络配置,并判断通过Public网卡和Private网卡是否能访问所述目标网络配置节点上的Oracle RAC集群业务;在通过Public网卡和Private网卡能访问所述目标网络配置节点上的Oracle RAC集群业务时,修正其他节点的VIP,并把节点的网段信息添加至Oracle RAC集群的配置文件中。
需要说明的是,所述目标网络配置节点可以是随机选取的网络配置节点,用于优先配置好网络(包括修正节点的VIP和集群的Scan IP)和启动集群业务,然后用来在网卡与交换机的连接关系出错时,作为参照连接关系对集群的其他各节点中网卡和交换机的连接关系进行修正。
在具体实施中,对于多节点带共享存储的目标环境,会对随机选取的目标网络配置节点执行设备权限修正和网卡参数信息修正步骤,具体可参照上述第一实施例中的相关步骤,启动Oracle RAC业务,之后集群的其他节点逐一执行以下配置操作:
根据用户指定的参数,尝试进行网络配置,配置之后都尝试通过Public网卡、Private网卡访问目标网络配置节点上的Oracle RAC业务:
如果可以正常访问,说明该节点网络配置没有问题,则调用gpnptool命令把网段配置信息写入集群配置文件中,具体可参照前面实施步骤;
如果某个节点的Public网卡、Private网卡有任何一个不能正常访问目标网络配置节点上的Oracle RAC业务,说明该节点网络连接有问题,发出预设的提示信息,以使管理员检查网络;
如果在指定的时间内Public网卡和Private网卡均不能访问目标网络配置节点上的Oracle RAC业务,可能是用户设定的目标网络配置信息异常,比如把MAC地址为“00:0c:29:c3:52:a3”的网卡错误指定成了Public网卡,把MAC地址“00:0c:29:c3:52:a0”的网卡错误指定成了Private网卡。此时将“00:0c:29:c3:52:a3”网卡调整为Private网卡,将“00:0c:29:c3:52:a0”网卡调整为Public网卡,再执行上述网卡参数信息修正的步骤,然后再尝试通过Public网卡、Private网卡去连接目标网络配置节点上的Oracle RAC业务,如果能连接成功,再调用gpnptool命令把网段配置信息写入集群配置文件中,具体可参照前面实施步骤,并通过srvctl命令来修正节点的VIP,启动集群服务和数据库服务进行数据库演练。如果在指定时间内仍然不能连接成功,采用用户设定的目标网络配置信息去配置网络和连接目标网络配置节点上的Oracle RAC业务(有可能是目标网络配置节点上的Oracle RAC业务启动慢),重新探测,测试是否访问成功,若仍然不能访问成功则调换Public网卡和Private网卡的连接关系,重复预设次数,若仍然不能正常访问则发出预设的提示信息,以使管理员检查网络,排查问题。
本实施例在所述预设目标环境的类型为多节点带共享存储时,根据所述演练策略获取所述待演练备份点中各节点的存储设备权限信息;根据所述存储设备权限信息对所述待演练备份点中各节点对应的存储设备进行设备权限修正;根据所述演练策略对所述Oracle RAC集群中的各节点进行网络配置。本实施例在预设目标环境的类型为多节点带共享存储时,根据演练策略对所述待演练备份点中各节点对应的存储设备进行设备权限修正;并对所述Oracle RAC集群中的各节点进行网络配置。自动完成权限修正及网络配置,提高数据库演练的效率。
参照图4,图4为本发明数据库演练装置第一实施例的结构框图。
如图4所示,本发明实施例提出的数据库演练装置包括:
恢复模块10,用于将待演练备份点恢复至预设目标环境中,并根据所述预设目标环境的类型确定对应的演练策略;
扫描模块20,用于扫描所述预设目标环境中的Oracle RAC集群的存储设备;
权限修正模块30,用于根据所述演练策略对所述存储设备进行设备权限修正,并根据所述演练策略对所述Oracle RAC集群进行网络配置;
演练模块40,用于对进行权限修正及网络配置后的Oracle RAC集群进行数据演练。
本实施例将待演练备份点恢复至预设目标环境中,并根据所述预设目标环境的类型确定对应的演练策略;扫描所述预设目标环境中的Oracle RAC集群的存储设备;根据所述演练策略对所述存储设备进行设备权限修正,并根据所述演练策略对所述Oracle RAC集群进行网络配置;对进行权限修正及网络配置后的Oracle RAC集群进行数据演练。由于本实施例是根据预设目标环境的类型确定对应的演练策略,根据所述演练策略对存储设备进行设备权限修正和对Oracle RAC集群进行网络配置,相对于现有的需要在隔离网络中进行数据库演练的方式,本实施例上述方式能够将待演练备份点恢复至任意网络主机中,且可以自动完成权限修正及网络配置,提高数据库演练的效率。
需要说明的是,以上所描述的工作流程仅仅是示意性的,并不对本发明的保护范围构成限定,在实际应用中,本领域的技术人员可以根据实际的需要选择其中的部分或者全部来实现本实施例方案的目的,此处不做限制。
另外,未在本实施例中详尽描述的技术细节,可参见本发明任意实施例所提供的参数运行方法,此处不再赘述。
基于本发明上述数据库演练装置第一实施例,提出本发明数据库演练装置的第二实施例。
在本实施例中,所述权限修正模块30,还用于根据所述演练策略获取所述待演练备份点中的存储设备权限信息;根据所述存储设备权限信息对所述存储设备进行设备权限修正;根据所述演练策略对所述Oracle RAC集群进行网络配置,所述预设目标环境的类型为单节点不带共享存储。
进一步的,所述权限修正模块30,还用于获取用户设定的目标网络配置信息;根据所述目标网络配置信息对所述Oracle RAC集群中的网卡参数信息进行修正;根据所述目标网络配置信息确定网段信息,并将所述网段信息添加至所述Oracle RAC集群的配置文件中。
进一步的,所述权限修正模块30,还用于所述预设目标环境的类型为单节点带共享存储,根据所述演练策略获取所述待演练备份点中的存储设备权限信息;根据所述存储设备权限信息对所述存储设备进行设备权限修正;通过multipath生成多路径设备,并提取所述多路径设备的公共前缀;根据所述公共前缀对所述多路径设备的路径信息进行修正,并根据所述演练策略对所述Oracle RAC集群进行网络配置。
进一步的,所述权限修正模块30,还用于所述预设目标环境的类型为多节点带共享存储,根据所述演练策略获取所述待演练备份点中各节点的存储设备权限信息;根据所述存储设备权限信息对所述待演练备份点中各节点对应的存储设备进行设备权限修正;根据所述演练策略对所述Oracle RAC集群中的各节点进行网络配置。
进一步的,所述权限修正模块30,获取目标网络配置节点,并对所述目标网络配置节点进行网络配置,并启动所述目标网络配置节点上的Oracle RAC集群业务;对OracleRAC集群的其他节点进行网络配置,并判断通过Public网卡和Private网卡是否能访问所述目标网络配置节点上的Oracle RAC集群业务;在通过Public网卡和Private网卡能访问所述目标网络配置节点上的Oracle RAC集群业务时,修正其他节点的VIP,并把节点的网段信息添加至Oracle RAC集群的配置文件中。
进一步的,所述扫描模块20,还用于获取所述预设目标环境中的目标存储设备;判断所述目标存储设备的目标数据块是否为asm头部数据块;在所述目标存储设备的目标数据块为asm头部数据块时,判定所述目标存储设备为Oracle RAC集群的存储设备。
本发明数据库演练装置的其他实施例或具体实现方式可参照上述各方法实施例,此处不再赘述。
此外,本发明实施例还提出一种存储介质,所述存储介质上存储有数据库演练程序,所述数据库演练程序被处理器执行时实现如上文所述的数据库演练方法的步骤。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如只读存储器/随机存取存储器、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (8)
1.一种数据库演练方法,其特征在于,所述数据库演练方法包括以下步骤:
将待演练备份点恢复至预设目标环境中,并根据所述预设目标环境的类型确定对应的演练策略;
扫描所述预设目标环境中的Oracle RAC集群的存储设备;
所述扫描所述预设目标环境中的Oracle RAC集群的存储设备的步骤,包括:获取所述预设目标环境中的目标存储设备,判断所述目标存储设备的目标数据块是否为asm头部数据块,在所述目标存储设备的目标数据块为asm头部数据块时,判定所述目标存储设备为Oracle RAC集群的存储设备;
根据所述演练策略对所述存储设备进行设备权限修正,并根据所述演练策略对所述Oracle RAC集群进行网络配置;
对进行权限修正及网络配置后的Oracle RAC集群进行数据演练;
所述预设目标环境的类型为单节点带共享存储时,所述根据所述演练策略对所述存储设备进行设备权限修正,并根据所述演练策略对所述Oracle RAC集群进行网络配置的步骤,包括:
根据所述演练策略获取所述待演练备份点中的存储设备权限信息;
根据所述存储设备权限信息对所述存储设备进行设备权限修正;
通过multipath生成多路径设备,并提取所述多路径设备的公共前缀;
根据所述公共前缀对所述多路径设备的路径信息进行修正,并根据所述演练策略对所述Oracle RAC集群进行网络配置。
2.如权利要求1所述的数据库演练方法,其特征在于,所述预设目标环境的类型为单节点不带共享存储;
所述根据所述演练策略对所述存储设备进行设备权限修正,并根据所述演练策略对所述Oracle RAC集群进行网络配置的步骤,包括:
根据所述演练策略获取所述待演练备份点中的存储设备权限信息;
根据所述存储设备权限信息对所述存储设备进行设备权限修正;
根据所述演练策略对所述Oracle RAC集群进行网络配置。
3.如权利要求2所述的数据库演练方法,其特征在于,所述根据所述演练策略对所述Oracle RAC集群进行网络配置的步骤,包括:
获取用户设定的目标网络配置信息;
根据所述目标网络配置信息对所述Oracle RAC集群中的网卡参数信息进行修正;
根据所述目标网络配置信息确定网段信息,并将所述网段信息添加至所述Oracle RAC集群的配置文件中。
4.如权利要求1所述的数据库演练方法,其特征在于,所述预设目标环境的类型为多节点带共享存储;
所述根据所述演练策略对所述存储设备进行设备权限修正,并根据所述演练策略对所述Oracle RAC集群进行网络配置的步骤,包括:
根据所述演练策略获取所述待演练备份点中各节点的存储设备权限信息;
根据所述存储设备权限信息对所述待演练备份点中各节点对应的存储设备进行设备权限修正;
根据所述演练策略对所述Oracle RAC集群中的各节点进行网络配置。
5.如权利要求4所述的数据库演练方法,其特征在于,所述根据所述演练策略对所述Oracle RAC集群中的各节点进行网络配置的步骤,包括:
获取目标网络配置节点,并对所述目标网络配置节点进行网络配置,并启动所述目标网络配置节点上的Oracle RAC集群业务;
对Oracle RAC集群的其他节点进行网络配置,并判断通过Public网卡和Private网卡是否能访问所述目标网络配置节点上的Oracle RAC集群业务;
在通过Public网卡和Private网卡能访问所述目标网络配置节点上的Oracle RAC集群业务时,修正其他节点的VIP,并把节点的网段信息添加至Oracle RAC集群的配置文件中。
6.一种数据库演练装置,其特征在于,所述数据库演练装置包括:
恢复模块,用于将待演练备份点恢复至预设目标环境中,并根据所述预设目标环境的类型确定对应的演练策略;
扫描模块,用于扫描所述预设目标环境中的Oracle RAC集群的存储设备;
权限修正模块,用于根据所述演练策略对所述存储设备进行设备权限修正,并根据所述演练策略对所述Oracle RAC集群进行网络配置;
演练模块,用于对进行权限修正及网络配置后的Oracle RAC集群进行数据演练;
所述扫描模块,还用于获取所述预设目标环境中的目标存储设备,判断所述目标存储设备的目标数据块是否为asm头部数据块,在所述目标存储设备的目标数据块为asm头部数据块时,判定所述目标存储设备为Oracle RAC集群的存储设备;
所述权限修正模块,还用于在所述预设目标环境的类型为单节点带共享存储时,根据所述演练策略获取所述待演练备份点中的存储设备权限信息;
根据所述存储设备权限信息对所述存储设备进行设备权限修正;
通过multipath生成多路径设备,并提取所述多路径设备的公共前缀;
根据所述公共前缀对所述多路径设备的路径信息进行修正,并根据所述演练策略对所述Oracle RAC集群进行网络配置。
7.一种数据库演练设备,其特征在于,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据库演练程序,所述数据库演练程序配置为实现如权利要求1至5中任一项所述的数据库演练方法的步骤。
8.一种存储介质,其特征在于,所述存储介质上存储有数据库演练程序,所述数据库演练程序被处理器执行时实现如权利要求1至5任一项所述的数据库演练方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111174019.4A CN113608932B (zh) | 2021-10-09 | 2021-10-09 | 数据库演练方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111174019.4A CN113608932B (zh) | 2021-10-09 | 2021-10-09 | 数据库演练方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113608932A CN113608932A (zh) | 2021-11-05 |
CN113608932B true CN113608932B (zh) | 2022-02-15 |
Family
ID=78343390
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111174019.4A Active CN113608932B (zh) | 2021-10-09 | 2021-10-09 | 数据库演练方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113608932B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116917884A (zh) * | 2022-02-18 | 2023-10-20 | 京东方科技集团股份有限公司 | Etl系统的构建方法及装置、数据处理方法及装置、etl系统 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2003291089A1 (en) * | 2002-11-27 | 2004-06-23 | Oracle International Corporation | Clustering system and method having interconnect |
CN104657200A (zh) * | 2015-03-03 | 2015-05-27 | 浪潮电子信息产业股份有限公司 | 一种在虚拟机中创建共享磁盘的方法 |
CN104809015A (zh) * | 2015-05-05 | 2015-07-29 | 浪潮电子信息产业股份有限公司 | 一种基于Linux系统下的自动部署Oracle rac环境的方法 |
CN108039969B (zh) * | 2017-12-13 | 2021-08-03 | 深圳市科力锐科技有限公司 | 网络自动配置方法、装置、系统、存储介质及目标计算机 |
CN110858173B (zh) * | 2018-08-23 | 2024-05-28 | 北京搜狗科技发展有限公司 | 一种数据处理方法、装置和用于数据处理的装置 |
CN110727501B (zh) * | 2019-09-29 | 2021-12-17 | 上海英方软件股份有限公司 | 一种基于虚拟机备份数据的演练方法及系统 |
CN112631846B (zh) * | 2020-12-25 | 2024-10-01 | 广州品唯软件有限公司 | 一种故障演练方法、装置、计算机设备及存储介质 |
CN113468541B (zh) * | 2021-06-30 | 2024-03-12 | 北京达佳互联信息技术有限公司 | 识别方法、装置、电子设备和存储介质 |
-
2021
- 2021-10-09 CN CN202111174019.4A patent/CN113608932B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN113608932A (zh) | 2021-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110661658B (zh) | 一种区块链网络的节点管理方法、装置及计算机存储介质 | |
US6941361B1 (en) | Method and apparatus for obtaining inventory and user information for a remote computer device | |
US8332490B2 (en) | Method, apparatus and program product for provisioning a computer system | |
JP5903822B2 (ja) | 設定制御装置、設定制御方法および設定制御プログラム | |
CN109271172B (zh) | 一种swarm集群的宿主机性能扩展方法及装置 | |
CN113608932B (zh) | 数据库演练方法、装置、设备及存储介质 | |
CN111654399A (zh) | 基于sd-wan的组网方法、装置、设备及存储介质 | |
EP3306858B1 (en) | Network management system deployment method and device, and network management system | |
CN112286786A (zh) | 数据库的测试方法、装置和服务器 | |
CN112714166B (zh) | 分布式存储系统的多集群管理方法及装置 | |
CN112286734A (zh) | 备份任务执行方法、装置、设备及存储介质 | |
CN116680045A (zh) | 一种分布式多设备数据采集方法及系统 | |
CN110688130A (zh) | 物理机部署方法、装置、可读存储介质及电子设备 | |
CN112104513B (zh) | 可视化软件负载方法、装置、设备及存储介质 | |
CN110661655B (zh) | 一种集群部署方法、系统、电子设备及存储介质 | |
CN112469038B (zh) | web认证接入网络的可靠性测试方法、系统及存储介质 | |
CN113986638A (zh) | 基于混沌工程的故障演练方法、系统、存储介质和电子设备 | |
EP3297254A1 (en) | Domain name system (dns) resolution processing method and device | |
CN110798381A (zh) | 一种验证kcs通道通信稳定性的方法、装置以及设备 | |
JP7441291B1 (ja) | 情報セキュリティ早期警報装置及び方法 | |
CN111752787A (zh) | 一种资源池容灾演练方法、装置及存储介质 | |
CN113849364B (zh) | 一种边缘应用管理方法、装置、设备及可读存储介质 | |
JP7189085B2 (ja) | 異常箇所推定装置及び方法 | |
CN114422361B (zh) | 一种集群服务器的运维管理方法、装置、设备及产品 | |
CN114785673B (zh) | 主备倒换时获取异常信息的方法和装置 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |