码迷,mamicode.com
首页 > 数据库 > 详细

Oracle恢复管理之重要参数DBID

时间:2019-07-12 00:55:06      阅读:200      评论:0      收藏:0      [点我收藏+]

标签:十六进制   使用   生成   app   home   rman   from   十六   select   

**Oracle恢复管理之重要参数DBID**

DBID,是数据库标识符。每个数据库都拥有一个编号,称为数据库标识符(DBID).该编号是在创建数据库时自动生成的,且Oracle不保证两个同名的数据库的DBID必然唯一的。所以Oracle提供$oracle_home/bin/nid命令,该命令能够在修改数据库名的同时自动生成新的DBID。在创建数据库之后,DBID一般都是不会变的,除非使用命令nid修改。

下面是查询DBID的方法:
1.查询v$DATABASE.DBID字段
在数据库正常工作时,查询v$database.DBID字段是获取DBID的最简单方法,此方法必须先将实例至少启动至MOUNT状态。

SQL> select dbid from v$database;

2.查看控制文件自动备份的文件名
通过控制文件自动备份的文件名获取,前提条件是没有利用快速恢复区放置自动备份
确认是否使用快速恢复区,查询语句(即db_recovery_file_dest参数为空):

SQL > show parameter db_recovery_file_dest

打开控制文件自动备份功能:
RMAN>configure controlfile autobackup on;

根据默认设置,控制文件自动备份的路径为¥oracle_home/dbs目录。备份文件的格式为c-<DBID>-<YYYYMMDD>-<CC>,最后的<CC>代表一天中第几次(十六进制)备份。发起备份,然后观察控制文件自动备份的文件名,留意"Starting Control File and SPFILE Autobackup at"
4.3.执行相应的转储命令,查看数据库各种文件的头部
利用"alter system dump logfile"命令转储某个归档日志至当前会话的追踪文件:
获取当前的会话跟踪文件的路径:
SQL> select value from v$diag_info where name=‘Default Trace File‘;

SQL> alter system dump logfile ‘/home/oracle/1_218_748028104.dbf‘;

根据查找出来的追踪文件,通过grep命令,过滤出‘db id‘
grep -i ‘db id‘ /u01/app/oracle/diag/rdbms/br/br/trace/br_ora_5301.trc

4.启用了恢复编录,通过查询恢复编录中的名为DB的表
使用编录方法,暂时不介绍,以后单独一篇文章来说。

Oracle恢复管理之重要参数DBID

标签:十六进制   使用   生成   app   home   rman   from   十六   select   

原文地址:https://blog.51cto.com/520527/2419359

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!