(19)中华人民共和国国家知识产权局
(12)发明专利申请
(10)申请公布号 (43)申请公布日 (21)申请号 202011593743.6
(22)申请日 2020.12.29
(71)申请人 中国人寿保险股份有限公司上海数
据中心
地址 200131 上海市浦东新区中国(上海)
自由贸易试验区张东路1388号29幢
101室
(72)发明人 刘军 
(74)专利代理机构 上海科盛知识产权代理有限
公司 31225
代理人 林君如
(51)Int.Cl.
G06F  11/14(2006.01)
G06F  11/20(2006.01)
(54)发明名称一种ORACLE数据库系统以及DataGuard环境部署方法和数据库切换方法(57)摘要本发明涉及一种ORACLE数据库系统以及DataGuard环境部署方法和数据库切换方法,包括源数据库、目标数据库和信息服务器,所述的源数据库为DataGuard环境部署前运行的数据库,用于在数据库切换前提供服务,并向目标数据库传输数据,包括分别运行数据库实例的第一服务器和第二服务器,所述的目标数据库为DataGuard环境部署后运行的数据库,用于在切换前从源数据库接收数据,并在切换后作为新的
源数据库,包括分别运行数据库实例的第三服务器和第四服务器,所述的信息服务器分别与源数据库和目标数据库通信连接,用于传送环境配置信息和流程控制信息,与现有技术相比,本发明
具有提高效率等优点。权利要求书3页  说明书8页  附图3页CN 112764967 A 2021.05.07
C N  112764967
A
1.一种ORACLE数据库系统,其特征在于,包括源数据库、目标数据库和信息服务器(3),所述的源数据库为DataGuard环境部署前运行的数据库,用于在数据库切换前提供服务,并向目标数据库传输数据,包括分别运行数据库实例的第一服务器(11)和第二服务器(12),所述的目标数据库为DataGuard环境部署后运行的数据库,用于在切换前从源数据库接收数据,并在切换后作为新的源数据库,包括分别运行数据库实例的第三服务器(21)和第四服务器(22),所述的信息服务器(3)分别与源数据库和目标数据库通信连接,用于传送环境配置信息和流程控制信息。
2.根据权利要求1所述的一种ORACLE数据库系统,其特征在于,所述的第一服务器(11)和第二服务器(12)在Oracle RAC环境的源数据库环境中各自运行一个数据库实例,共同管理一份数据;
所述的第三服务器(21)和第四服务器(22)在Oracle RAC环境的目标数据库环境中各自运行一个数据库实
例,共同管理一份数据。
3.根据权利要求2所述的一种ORACLE数据库系统,其特征在于,所述的第一服务器(11)和第二服务器(12)管理同一个数据库,所述的第三服务器(21)和第四服务器(22)管理同一个数据库。
4.根据权利要求3所述的一种ORACLE数据库系统,其特征在于,所述的信息服务器(3)用于提供第一服务器(11)、第二服务器(12)、第三服务器(21)和第四服务器(22)之间上传/下载的环境配置信息和流程控制信息;
所述的环境配置信息包括源数据库和目标数据库的环境参数,所述的环境参数包括各服务器的IP地址、主机名、数据库名和端口;
所述的流程控制信息包括第一服务器(11)、第二服务器(12)、第三服务器(21)和第四服务器(22)的执行顺序信息。
5.一种如权利要求1‑4任一项所述的ORACLE数据库系统的DataGuard环境部署方法,用于实现源数据库到目标数据库的环境部署和文件同步,其特征在于,包括以下步骤:S11:所述的第一服务器(11)从信息服务器(3)上获取环境配置信息,初始化运行环境和配置源数据库环境,并在完成后将环境配置信息和流程控制信息上传到信息服务器(3)上;
S12:所述的第三服务器(21)、第四服务器(22)和第二服务器(12)根据流程控制信息按照顺序依次从信息服务器(3)上获取环境配置信息,进行对应数据库的环境配置,并在完成后将流程控制信息上传到信息服务器(3)上;
S13:所述的第三服务器(21)根据流程控制信息发起数据文件同步请求,并在完成后将流程控制信息上传到信息服务器(3)上;
S14:所述的第一服务器(11)根据流程控制信息开启应用日志同步功能,并在完成后将流程控制信息上传到信息服务器(3)上;
S15:所述的第四服务器(22)根据流程控制信息进行Oracle RAC环境配置,并在完成后将流程控制信息上传到信息服务器(3)上;
S16:所述的第三服务器(21)根据流程控制信息进行Oracle RAC环境配置和日志接收。
6.根据权利要求5所述的一种ORACLE数据库系统的DataGuard环境部署方法,其特征在于,所述的第一服务器(11)初始化运行环境和配置源数据库环境,具体包括:创建备份日
志;修改配置文件,在其中加入目标数据库的定义;生成ORACLE数据库的密码文件和参数文件;
所述的第三服务器(21)进行目标数据库环境配置,具体包括:创建ORACLE数据库审计目录;从信息服务器(3)上下载密码文件;修改ORACLE数据库的“init数据库名.ora”文件;注册监听服务;修改配置文件,在其中加入源数据库和目标数据相关定义;获取并修改第一服务器(11)生成的参数文件,生成新的参数文件,并利用新生成的参数文件启动数据库到mount状态;
所述的第四服务器(22)进行目标数据库环境配置,具体包括:创建Oracle数据库审计目录;从信息服务器(3)上下载密码文件;修改ORACLE数据库的“init数据库名.ora”文件;注册监听服务;修改配置文件,在其中加入源数据库和目标数据库的定义;
所述的第二服务器(12)进行源数据库环境配置,具体包括:
从信息服务器(3)上下载密码文件;修改ORACLE数据库的配置文件,在其中加入目标数据库第三服务器(21)和第四服务器(22)的定义。
7.根据权利要求6所述的一种ORACLE数据库系统的DataGuard环境部署方法,其特征在于,所述的第四服务器(22)进行Oracle RAC环境配置,具体包括:修改ORACLE数据库的“init数据库名.ora”文件;
所述的第三服务器(21)进行Oracle RAC环境配置和日志接收,具体包括:修改Oracle 数据库的参数文件;配置RAC功能;注册动态监听;启用日志同步和应用日志;循环检查日志同步情况。
8.一种如权利要求1‑4任一项所述的ORACLE数据库系统的数据库切换方法,用于实现源数据库与目标数据库的切换,其特征在于,包括以下步骤:
S21:所述的第四服务器(22)从信息服务器(3)上获取环境配置信息,检查环境和停止数据库实例,并在完成后将流程控制信息上传到信息服务器(3)上;
S22:所述的第二服务器(12)和第一服务器(11)根据流程控制信息,按照顺序依次进行切换准备工作,并在完成后将流程控制信息上传到信息服务器(3)上;
S23:所述的第一服务器(11)或第二服务器(12)根据流程控制信息,进行源数据库备份,并在完成后将流程控制信息上传到信息服务器(3)上;
S24:所述的源数据库根据流程控制信息,切换至备份状态,并在完成后将流程控制信息上传到信息服务器(3)上;
S25:所述的第三服务器(21)根据流程控制信息,切换到源数据库环境,并在完成后将流程控制信息上传到信息服务器(3)上;
S26:所述的第一服务器(11)根据流程控制信息,接收日志并应用日志,并在完成后将流程控制信息上传到信息服务器(3)上;
S27:所述的第二服务器(12)根据流程控制信息,启动源数据库实例,并在完成后将流程控制信息上传到信息服务器(3)上;
S28:所述的第三服务器(21)根据流程控制信息,开启日志同步功能,进行日志同步传输。
9.根据权利要求8所述的一种ORACLE数据库系统的数据库切换方法,其特征在于,所述的第四服务器(22)检查环境和停止数据库实例,具体包括:
首先从信息服务器(3)上获取环境配置信息,循环检查目标数据库环境中归档空间设置,判断可用归档空间是否充足,若是,则停止第四服务器(22)运行的数据库实例,否则等待扩容空间;
所述的第二服务器(12)进行切换准备工作,具体包括:
分别检查源数据库的作业和事务是否完成、检查其他应用与第二服务器(12)运行的数据库实例的连接是否断开,若均为是,则锁定用户,生成响应的解锁脚本并将脚本上传到信息服务器(3)上,同时关闭第二服务器(12)运行的数据库实例;
所述的第一服务器(11)进行切换准备工作,具体包括:
停止使用源数据库的其他应用的运行,并将对应的配置文件和配置信息上传到信息服务器(3)上;采集源数据库信息,并将源数据库信息上传到信息服务器(3)上;重启第一服务器(11)运行的数据库实例。
10.根据权利要求9所述的一种ORACLE数据库系统的数据库切换方法,其特征在于,所述的第一服务器(11)或第二服务器(12)进行源数据库备份,具体包括:
启动源数据库实例并发起数据备份,通过循环判断数据备份是否完成,若是,则停止数据库实例,否则继续进行数据备份;
所述的第三服务器(21)切换到源数据库环境,具体包括:
从信息服务器(3)获取第二服务器(12)生成的解锁脚本和第一服务器(11)生成的源数据库信息,以及第一服务器(11)生成的其他应用对应的配置文件和配置信息,将目标数据库切换到源数据库环境,并通过将循环采集的目标数据库信息与从信息服务器(3)上获取的源数据库信息进行核对,确定是否切换成功;
所述的第三服务器(21)进行日志同步传输,具体包括:
检查日志同步情况;完成其他应用的部署并开始备份;解锁目标数据库用户;循环检查目标数据库与源数据库日志同步情况。
一种ORACLE数据库系统以及DataGuard环境部署方法和数据
库切换方法
技术领域
[0001]本发明涉及OR ACL E数据库领域,尤其是涉及一种OR ACL E数据库系统以及DataGuard环境部署方法和数据库切换方法。
为什么oracle网站进不去背景技术
[0002]Oracle数据库提供了安全可靠的数据解决方案,包括Oracle  RAC和DataGuard功能。其中Oracle  RAC实现了多个服务器节点同时访问维护一套数据的功能,实现了高可用和负载均衡,一台节点故障不影响业务的运行。Oracle  DataGuard是Oracle自带的数据同步功能,基本原理是将日志文件从源数据库传输到目标数据库,然后在目标数据库上应用这些日志文件,从而使目标数据库与源数据库保持同步,是一种数据库级别的高可用性方案。在DataGuard环境中,源数据库和目标数据库可以进行切换,正常情况下源数据库作为生产数据库,目标数据库作为灾备数据库,当源数据库发生故障时,可以在短时间内将目标数据库切换成生产环境,保障生产系统的运行;使用DataGuard的源数据库与目标数据库的切换功能,可以实现数据库在不同的硬件设备上的迁移。
[0003]Oracle  DataGuard环境的部署、源数据库和目标数据库的切换,需要对Oracle的深入理解和专业的技术能力,操作比较复杂。目前市场上主要是通过数据库专家手工实施,实施周期长,并且实施过程中有多项参数需要从实施环境中获取,实施命令较多,容易失误导致出错。尤其是在需要大量部署Oracl
e  DataGuard环境和数据库切换的场景下,大部分为重复性工作、效率低下。
[0004]中国专利CN201210139205.9公开了一种保持Oracle数据库服务高可用的实现方法,包括:为各数据库节点分配虚拟IP;对数据库节点进行心跳检测,判断数据库主、从节点是否存活,当发现主节点不可访问时,自动将虚拟IP飘移至从节点,并切换从节点的身份为主节点,该发明适用于ORACLE数据库的DATAGUARD特性,可以在不丢失数据的前提下实现数据库的主从切换。但是该方案需要部署一套DataGuard环境,切换过程步骤操作复杂,效率低且容易发生失误导致出错。
发明内容
[0005]本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种高效率的ORACLE数据库系统以及DataGuard环境部署方法和数据库切换方法。
[0006]本发明的目的可以通过以下技术方案来实现:
[0007]一种ORACLE数据库系统,包括源数据库、目标数据库和信息服务器,所述的源数据库为DataGuard环境部署前运行的数据库,用于在数据库切换前提供服务,并向目标数据库传输数据,包括分别运行数据库实例的第一服务器和第二服务器,所述的目标数据库为DataGuard环境部署后运行的数据库,用于在切换前从源数据库接收数据,并在切换后作为新的源数据库,包括分别运行数据库实例的第三服务器和第四服务器,所述的信息服务器
说 明 书1/8页CN 112764967 A

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。