• 配置全局disql环境变量,在使⽤时会显⽰⼀些有⽤的附加信息,⽅便调试。
使⽤时可根据实际需求设置,下⾯给出常⽤的⼀些配置,具体含义可以参考官⽅⼿册。
• 配置上下翻⻚查找功能源码编译或者使⽤rpm包安装rlwrap 软件,实现上下翻⻚。
源码编译该软件时会依赖readline-devel组件,该组件⼜依赖ncurses-devel组件。有条件的话yum安装readline-devel即可。
在线备份数据库,必须使数据库处于归档模式。
1)在集群任意节点上,打开disql命令,输⼊shutdown immediate命令
2)检查数据库运⾏⽇志,确定数据库正常关闭
在⽇志的末尾看到数据库正常关闭的输出。
3)修改DSC集群所有节点的dmarch.ini⽂件,配置本节点和其他节点的归档参数。
节点⼀:
节点⼆:
这⾥采⽤DMASM的⽅式,每个节点都将本地的归档共享给了其他的节点,不再通过MAL的⽅式互传归档。
注意RCH_LOCAL_SHARE=1这个参数的使⽤。
• 修改dm.ini中的参数 ARCH_INI为1,打开归档模式
• open数据库
推荐使⽤dmcssm⼯具启动,可将多个节点依次启动,并通过观察输出判断节点是否正确启动
• 通过v$arch_status动态视图查看归档是否⽣效。
• 各节点分别切换⼀次归档,观察是否在各⾃的共享⽬录中⽣成。
v$arch_file 可以查看所有节点的归档⽣成情况。
• 差异增量备份
基备份可以是全备,可以是某⼀次增量备份
• 累计增量备份
基备份只能是全备
两种增量备份⽅式在还原时都是基于⼀个全量的备份。
默认差异增量备份。increament 关键字后⾯添加 cumulative 关键字变成了累积增量备份。
查看备份⽬录会存在如下备份集:
以下是与备份相关的动态性能视图
通过 V$BACKUP_HISTORY 可以查看到历史备份信息:
使⽤dmrman⼯具将数据库还原到指定的⽬录下,建议⽬录名指定为新的数据库名,如下为DB02。还原过程中会在指定
的⽬录下重建dm.ctl⽂件。
from backupset 后⾯跟某个增量备份路径。backupdir 后⾯跟基备份⽬录,如果需要恢复到最后⼀个增量,from
backupset 后直接指定最后⼀次差异增量备份即可。
recover database 操作必须指定全备路径。
要完成到某个特定时间点的还原操作,需要归档⽇志的配合。
在上⾯恢复的基础上,不要更新数据库魔数。即update db_magic这⼀步。登录到DB01数据库,往bkoper⽤户下
的表t3中继续插⼊1000条记录。
• 定位⽬前已恢复到那个LSN号,确定应⽤⽇志的起点。
• 原库查找end_lsn号对应那个归档⽇志⽂件。
• 拷⻉到还原库的归档⽬录下
• 应⽤归档
• 按照步骤5中的描述建⽴2个⽬录,修改相应的参数启动数据库,新插⼊的1000条记录将出现在还原库中。
使⽤DSC集群备份还原到单机并应⽤归档到指定时间点
[-718]:Archive log collected not consecusive 归档⽇志不连续(某⼀节点⽇志缺失引发)
[-730]:Archive log absent 归档⽇志缺失(缺少DSC集群中其他节点的⽇志引发)
以下操作基于Linux⽂件系统
场景:客户将数据库的某个表空间下的所有⽂件全部删除,导致数据库异常,需要紧急恢复。
处理方法⼀:
在数据库没有关闭的情况下使⽤
1、检查表空间数据⽂件是否被删除
2、标记被误删除物理⽂件的表空间
3、根据进程号找到对应⽂件的句柄并拷⻉到源路径
4、恢复表空间为正常状态
处理方法⼆:
使⽤数据备份快速恢复误删除的⽂件
如果数据⽂件丢失后,数据库⼜被关闭,只能通过备份恢复数据⽂件
文章
阅读量
获赞