将K‑DB集群模式下各实例归档文件集中存放的方法技术

技术编号:17407172 阅读:28 留言:0更新日期:2018-03-07 04:57
本发明专利技术提供一种将K‑DB集群模式下各实例归档文件集中存放的方法,涉及归档文件安全存储领域,本发明专利技术K‑DB数据库使用LOG_ARCHIVE_DEST_n参数指定归档目录,对其增加include属性,该属性的作用是指定需要归档到本地的实例列表,在该参数列表中的所有实例产生的归档文件都会拷贝到本地目录中。对归档进程进行改造,使其能够根据LOG_ARCHIVE_DEST_n中include属性的值,将指定实例产生的归档拷贝到本地目录。可以实现归档文件的冗余存储,有效的保护了归档文件,并且降低了系统复杂度。

Methods K DB cluster model under various examples of centralized archive file

The invention provides a method for converting K DB cluster file stored in each instance, relates to the field of archive safety storage, the K DB database use the LOG_ARCHIVE_DEST_n parameter to specify the file directory, add the include attribute on the attribute is specified, the need to be archived to the local list of instances, generating all instances in the parameter list in the file will be copied to the local directory. The archiving process is reformed to enable it to copy the file generated by the specified instance to the local directory based on the value of the include attribute in the LOG_ARCHIVE_DEST_n. The redundant storage of archival files can be realized, the archiving files are protected effectively and the complexity of the system can be reduced.

【技术实现步骤摘要】
将K-DB集群模式下各实例归档文件集中存放的方法
本专利技术涉及归档文件安全存储技术,尤其涉及一种将K-DB集群模式下各实例归档文件集中存放的方法。
技术介绍
K-DB数据库通过数据库参数LOG_ARCHIVE_DEST_n,可以设置本实例归档文件的归档目录为本地文件系统目录或共享目录。当设置成本地目录或共享目录后时,本实例生成的归档文件会由数据库归档进程拷贝到指定目录。在K-DB集群模式下,数据库由多个数据库实例组成,这些实例分布在不同的主机上,每个实例需要分别设置自己的归档目录,然后本实例产生的归档文件保存到本实例归档目录。在使用数据库备份软件备份时,备份软件需要能够读取所有实例产生的归档文件,所以集群模式下所有实例必须将归档目录设置到共享目录,在某个实例上能够访问到其它实例产生的归档文件。该共享目录可以是共享文件系统的目录或是数据库KAS磁盘组,共享文件系统可以使用GFS、HDFS等。GFS、HDFS等需要在主机上另外安装共享文件系统软件,这无疑增加了数据库软件环境的复杂度,并且共享文件系统软件BUG问题可能造成放在里面的归档文件无法读取。KAS是K-DB自己提供的一种磁盘管理系统,用于管理底层磁盘为数据库提供磁盘组存储数据文件或归档文件等,在使用时不能直接使用操作系统命令对其中的文件进行操作,所以如果KAS出现故障,可能造成其中的数据文件和归档文件等无法访问并丢失。数据库恢复时需要读取之前产生的归档文件将数据库恢复到最新状态或某个时间点,恢复时缺少任何一个归档文件数据库都将无法完成恢复,所以归档文件安全存储至关重要,使用共享文件系统和KAS存储归档文件都给数据库正常运行和恢复带来一定风险。
技术实现思路
为了使K-DB集群模式中在某个实例上备份数据库时能够访问到所有实例产生的归档文件,而且不使用共享文件系统和KAS,本专利技术提出了一种将K-DB集群模式下各实例归档文件集中存放的方法。不需要借助共享文件系统和KAS功能。通过对归档地址参数增加include属性,对归档进程进行改进使其能将include指定实例的归档文件拷贝到本地文件系统,实现将不同实例的归档文件集中存放的目的。如果每个实例的归档参数都通过include属性指定所有实例,那么每个实例上都会存储所有实例的归档文件,在任何一个实例上备份数据库都可以读取其它实例产生的归档文件。K-DB数据库使用LOG_ARCHIVE_DEST_n参数指定归档目录,对其进行改造增加include属性,该属性的作用是指定需要归档到本实例列表,在该参数列表中的所有实例产生的归档文件都会拷贝到本地目录中。对归档进程进行改造,使其能够根据LOG_ARCHIVE_DEST_n中include属性的值,将指定实例产生的归档拷贝到本地目录。归档进程监控include属性指定实例的REDO文件,当发现REDO写满后要归档时,将写满的REDO文件拷贝到指定目录形成归档文件,通过这种方式使得在集群中一个实例上就可以将其它实例产生的归档文件集中拷贝到本实例归档指定目录中;主要包括两个方面:1)LOG_ARCHIVE_DEST_n中include属性;2)归档进程功能改进。1)LOG_ARCHIVE_DEST_n中include属性数据库将归档文件产生到参数LOG_ARCHIVE_DEST_n指定的目录,该参数的值设置成如下:LOG_ARCHIVE_DEST_1='location=/usr/archive_log',其中location表示是本地目录,/usr/archive_log为设置的归档目录,按该种方法设置后本地的实例产生的档归文件会拷贝到/usr/archive_log目录中;为LOG_ARCHIVE_DEST_n参数增加include属性,用来指定需要归档到本地目录的实例,改造后该参数设置如下:LOG_ARCHIVE_DEST_1='location=/usr/archive_log,include=(ac0,ac1)',其中include=(ac0,ac1)指定了ac0和ac1两个实例,会将这两个实例产生的归档文件拷贝到/usr/archive_log目录集中存放。2)归档进程功能改进归档进程的作用是将实例新产生的归档文件拷贝到参数LOG_ARCHIVE_DEST_n指定位置,改造后,LOG_ARCHIVE_DEST_n参数设置了include属性并指定了其它实例,那么归档进程监控本实例及指定实例的归档,并将本实例及指定实例的归档文件拷贝到本机指定目录;如果集群各实例的LOG_ARCHIVE_DEST_n参数不配置include属性,那么各实例还是对自己的归档文件进行归档。本专利技术的有益效果是本专利技术通过灵活方便的配置实现数据库集群中各实例归档文件的集中存储,数据库备份的时候可以方便的访问到所有实例产生的归档文件,另外通过在不同实例上配置归档参数可以实现归档文件的冗余存储,有效的保护了归档文件。使用本功能设计,归档文件的集中存储就不再需要借助共享文件系统软件和KAS,避免了由于使用共享文件系统软件和KAS存储归档文件给数据库运行带来的风险,并且降低了系统复杂度。附图说明图1是数据库归档文件生成的示意图;图2是改造后归档示意图。具体实施方式下面对本专利技术的内容进行更加详细的阐述:主要包括两个方面:1)LOG_ARCHIVE_DEST_n中include属性;2)归档进程功能改进。1)、LOG_ARCHIVE_DEST_n中include属性数据库将归档文件产生到参数LOG_ARCHIVE_DEST_n指定的目录,该参数的值一般设置成类似如下:LOG_ARCHIVE_DEST_1='location=/usr/archive_log',其中location表示是本地目录,/usr/archive_log为设置的归档目录,按该种方法设置后本实例产生的档归文件会拷贝到/usr/archive_log目录中。为LOG_ARCHIVE_DEST_n参数增加include属性,用来指定需要归档到本地目录的实例,改造后该参数设置如下:LOG_ARCHIVE_DEST_1='location=/usr/archive_log,include=(ac0,ac1)',其中include=(ac0,ac1)指定了ac0和ac1两个实例,会将这两个实例产生的归档文件拷贝到/usr/archive_log目录集中存放。比如在ac0实例中设置了上述参数,那么ac0和ac1两个实例产生的归档都会拷贝到ac0实例所在主机的/usr/archive_log目录下。2)、归档进程功能改进归档进程的作用是将实例新产生的归档文件拷贝到参数LOG_ARCHIVE_DEST_n指定位置,下图所示为目前数据库归档文件生成的示意图:两台主机组成了K-DB集群,实例分别为ac0和ac1,通过连接共享存储实现数据库的共享。在存储中存放了数据库的REDO文件,集群中每个实例都会有自己的若干REDO组,平时每个实例只需要向属于自己的REDO组写入数据,当某个实例CRASH后,另一个实例会读取CRASH实例的REDO数据进行数据的自动恢复,所以数据库所有实例都可以读取其它实例的REDO文件。REDO文件被写满后,就由归档文本文档来自技高网
...
<a href="http://www.xjishu.com/zhuanli/55/201710999353.html" title="将K‑DB集群模式下各实例归档文件集中存放的方法原文来自X技术">将K‑DB集群模式下各实例归档文件集中存放的方法</a>

【技术保护点】
一种将K‑DB集群模式下各实例归档文件集中存放的方法,其特征在于,K‑DB数据库使用LOG_ARCHIVE_DEST_n参数指定归档目录,对其增加include属性,该属性的作用是指定需要归档到本实例列表,在该参数列表中的所有实例产生的归档文件都会拷贝到本地目录中;对归档进程进行改造,使其能够根据LOG_ARCHIVE_DEST_n中include属性的值,将指定实例产生的归档拷贝到本地目录。

【技术特征摘要】
1.一种将K-DB集群模式下各实例归档文件集中存放的方法,其特征在于,K-DB数据库使用LOG_ARCHIVE_DEST_n参数指定归档目录,对其增加include属性,该属性的作用是指定需要归档到本实例列表,在该参数列表中的所有实例产生的归档文件都会拷贝到本地目录中;对归档进程进行改造,使其能够根据LOG_ARCHIVE_DEST_n中include属性的值,将指定实例产生的归档拷贝到本地目录。2.根据权利要求1所述的方法,其特征在于,归档进程监控include属性指定实例的REDO文件,当发现REDO写满后要归档时,将写满的REDO文件拷贝到指定目录形成归档文件,通过这种方式使得在集群中一个实例上就可以将其它实例产生的归档文件集中拷贝到本实例归档指定目录中;主要包括两个方面:1)LOG_ARCHIVE_DEST_n中include属性;2)归档进程功能改进。3.根据权利要求2所述的方法,其特征在于,1)LOG_ARCHIVE_DEST_n中include属性数据库将归档文件产生到参数LOG_ARCHIVE_DEST_n指定的目录,该参数的值设置成如下:LOG_ARCHIVE_DEST_1='location=/usr/archive_log',其中...

【专利技术属性】
技术研发人员:马国良
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1