文档详情

如何恢复PF中被误删除的记录?.doc

发布:2017-06-20约4.77千字共17页下载文档
文本预览下载声明
如何恢复PF中被误删除的记录? ? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ? 作成:ITS qingzhou ? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ? 时间:2006/6/22 日志(Journal)的概念相当于其它关系数据库的日志(LOG),通常如果事务型应用需要提交/回滚(Commit/Roll Back)时,数据库的表是需要日志的。另外,如果表上定义了触发器、参照完整性(Referential Integrity),表也需要日志的。 DB2 for iSeries的表是可以有日志的,也可以无日志的。如果你用来创建的是Library而不是SQL的Collection,那么创建于这个Library的表默认是没有日志的。反之,如果你用来创建的是SQL的Collection,那么创建于这个Library的表默认是有日志的;默认的日志是QSQJRN,默认的日志接收器是QSQJRN0001,用户可以更改这些默认属性。 以下就是通过日志来恢复误删除PF记录的一个事例,你可以用Navigator方式进行创建日志,如果习惯用5250仿真绿屏方式,也可以使用CL命令来创建日志,以下是以5250绿屏方式。 1、创建日志接收器 === CRTJRNRCV JRNRCV(LIU/LIUJRNRCV) TEXT(Lius Journal Receive)?? 2、建立日志 === CRTJRN JRN(LIU/LIUJRN) JRNRCV(LIU/LIUJRNRCV) TEXT(lius Journal) 3、以LIU/EXECTL这个PF为例,以*BOTH方式启动日志 === STRJRNPF FILE(LIU/EXECTL) JRN(LIU/LIUJRN) IMAGES(*BOTH) 为了利用JRN进行修改回退,JRN必须启用了参数Journal images的*BOTH选项,即除了缺省的After Images还要包含Before Images. 4、先查询目前记录情况,共75条记录。 === RUNQRY *N LIU/EXECTL 5、测试:通过STRDFU删除LIU/EXECTL记录5条,然后再次查询情况,仅剩下70条记录。 6、利用RMVJRNCHG命令恢复记录 === RMVJRNCHG JRN(LIU/LIUJRN) FILE((LIU/EXECTL)) 7、系统提示:Remove failed. 5 entries removed from *QDDS object. 8、再次查询LIU/EXECTL情况,发觉被删除的记录已经恢复。 ■如果想删除日志及日志接收器,需要按照如下步骤实施。 1、先解除日志与PF文件的关联 === ENDJRNPF FILE(LIU/EXECTL) JRN(LIU/LIUJRN) 2、删除日志 === DLTJRN JRN(LIU/LIUJRN) 3、删除日志接收器 === DLTJRNRCV JRNRCV(LIU/LIUJRNRC 1.gif (32.86 KB) 2006-6-22 15:18 ? 1、创建日志接收器 2.gif (41.55 KB) 2006-6-22 15:18 ? 2、建立日志 3.gif (34.03 KB) 2006-6-22 15:18 ? 3、以LIU/EXECTL这个PF为例,以*BOTH方式启动日志 4.gif (55.11 KB) 2006-6-22 15:18 ? 4、先查询目前记录情况,共75条记录。 5.gif (55.67 KB) 2006-6-22 15:18 ? 5、测试:通过STRDFU删除LIU/EXECTL记录5条,然后再次查询情况,仅剩下70条记录。 6.gif (37.62 KB) 2006-6-22 15:18 ? 6、利用RMVJRNCHG命令恢复记录 7.gif (41.98 KB) 2006-6-22 15:18 ? 7、系统提示:Remove failed. 5 entries removed from *QDDS object. 8.gif (55.83 KB) 2006-6-22 15:18 ? 8、再次查询LIU/EXECTL情况,发觉被删除的记录已经恢复。 DB2 for iSeries的日志由两部分组成:Journal和 Journal Receive。Journal相当于一张登记表,记录着那些表是
显示全部
相似文档