[发明专利]一种基于物理级的数据库日志挖掘方法有效
申请号: | 201610016313.5 | 申请日: | 2016-01-12 |
公开(公告)号: | CN105677876B | 公开(公告)日: | 2018-04-03 |
发明(设计)人: | 聂庆节;刘赛;岳峻松;张磊;胡楠;彭巍;吴金龙;邵佳炜 | 申请(专利权)人: | 国家电网公司;南京南瑞集团公司;南京南瑞信息通信科技有限公司;国网上海市电力公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 南京纵横知识产权代理有限公司32224 | 代理人: | 姚兰兰,董建林 |
地址: | 100761 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 物理 数据库 日志 挖掘 方法 | ||
1.一种基于物理级的数据库日志挖掘方法,其特征在于,包括以下几个步骤:
(1)从数据库表v$archived_log获取当前操作系统数据块大小;并从数据库表v$archived_log中获取Redo日志全路径名,根据Redo日志全路径名判断日志文件是存储在文件系统还是Oracle自带自动存储管理ASM上,如果Redo日志文件存储在ASM上,则从数据库表v$asm_disk中取得路径;
(2)从数据库表v$log,v$logfile中获取数据库Redo日志组信息;
(3)根据数据库Redo日志组信息,启动多个子进程,对每一个Redo日志组进行单独进程挖掘;根据数据库Redo日志文件头标志位信息,挖掘日志文件头信息,比对thread和数据库ID,判断是否和生产库一致,如果不一致,则返回错误,如果一致,则从日志文件头中获取当前的日志序列sequence号,判断日志序列是否存在,如果不存在则返回错误,如果存在,则检查当前日志文件头中序列是否和之前获取的日志序列sequence号一致,如果不一致,说明当前文件已经被覆盖,则返回错误信息,终止当前日志挖掘,等待归档流程处理,如果一致,则转向步骤(4);
(4)开始挖掘日志文件头后的数据块,每次挖掘固定大小数据,记录当前挖掘的数据块数,将数据块内容写入新建的临时文件,临时文件名根据业务系统id、在线日志组号、sequence号以及当前数据块编号进行命名,如果当前日志文件挖掘没有结束,则继续执行步骤(4),如果当前日志文件挖掘结束,则转向步骤(5);
(5)重新挖掘日志文件头,获取日志结束标志,并写入临时文件中,然后计算日志文件校验和,并将校验和写入到日志头的第14-15字节,结束当前文件挖掘,然后开始挖掘下一日志文件。
2.根据权利要求1所述的基于物理级的数据库日志挖掘方法,其特征在于,步骤(1)中,对数据库表v$archived_log、v$asm_disk的操作权限的描述以及其中关键档位的描述,如下表1所示:
表1 数据库表v$archived_log、v$asm_disk的操作权限的描述以及其中关键档位的描述
3.根据权利要求1所述的基于物理级的数据库日志挖掘方法,其特征在于,步骤(2)中,对数据库表v$log,v$logfile的调用关系如下表2所示:
表2 数据库表v$log,v$logfile的操作权限的描述以及其中关键栏位的描述
4.根据权利要求1所述的基于物理级的数据库日志挖掘方法,其特征在于,步骤(3)中,日志文件头标志位信息如下表3所示:
表3 日志文件头的标志位信息表
5.根据权利要求1所述的基于物理级的数据库日志挖掘方法,其特征在于,步骤(4)中,临时文件命名规则是:thread号+sequence号+业务系统id+数据块编号;将当前数据挖掘块数写入到日志文件头的第24-27字节,数据块数计算公式是:index/blocksize-1。
6.根据权利要求5所述的基于物理级的数据库日志挖掘方法,其特征在于,步骤(5)中,重新挖掘日志文件头即修改日志文件头表示日志类型的第236-239字节,将原记录在线日志修改为归档日志类型,如果是oracle10g数据库写入17,如果是oracle11g数据库写入8388625。
7.根据权利要求1所述的基于物理级的数据库日志挖掘方法,其特征在于,步骤(5)中,重新挖掘日志文件头后再写入日志文件校验和,其校验和计算方法如下:
步骤一,将日志头分成多个64字节的端;
步骤二,首先将第一个段分为四个16字节的段,第1和第2段进行16字节异或得到值a,第3和第4段进行16字节异或得到值b,初始化变量c为0,将a和c异或得到c,将c与b进行异或得到c;
步骤三,将64字节段循环执行以上操作,每次和上一轮得到c值进行异或,c为全局变量,不是每次取初始值;
步骤四,等待全部计算完,得到最终的c值,将16字节的c分为4个4字节段r1、r2、r3、r4,将上述四个值分别按位异或得到值r0;
步骤五,将r0按位右移16位得到g,将r0与g进行异或得到校验和反数m;
步骤六,将m与0xFFFF按位与,得到最终的校验和;
步骤七,将计算的校验和写到日志文件头的第14-15字节,结束校验。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国家电网公司;南京南瑞集团公司;南京南瑞信息通信科技有限公司;国网上海市电力公司,未经国家电网公司;南京南瑞集团公司;南京南瑞信息通信科技有限公司;国网上海市电力公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610016313.5/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种经络脉冲气流美容仪
- 下一篇:体外充电式植入医疗仪器