• 在数据库各种状态下查询DBID的五大类十种方法汇总


    关于DBID:

    DBID是DataBase IDentifier的缩写,意思就是数据库的唯一标识符。
    这个DBID在数据文件头和控制文件都是存在的,可以用于标示数据文件的归属。
    对于不同数据库来说,DBID应当不同,而db_name则可能是相同的。
    但是DBID是可变的,在进行数据库Clone等操作时,DBID可以被重置。
    dbid是一个根据db_name db create time等hash出来的值

    NOMOUNT/MOUNT/OPEN及未打开数据库等状态时,查询或获取数据库DBID的方法汇总:五大种类合计10种方法

    一、数据库MOUNT/OPEN时,从v$database查询获得

    1.由于DBID在控制文件和数据文件中都存在记录,所以如果能够mount数据库就可以查询v$database视图获得.

    BYS@ bys3>select dbid,open_mode from v$database;
          DBID OPEN_MODE
    ---------- --------------------
    3358363031 READ WRITE
    SYS@ bys3>select dbid,open_mode from v$database;
          DBID OPEN_MODE
    ---------- --------------------

    3358363031 MOUNTED


    二、使用RMAN的自动备份或日志来获取:

    2.从自动备份控制文件集的名字查询DBID,详见:http://blog.csdn.net/q947817003/article/details/16370735
    3.从RMAN备份时产生的日志文件查询DBID,与上一步在同一篇博客。详见:http://blog.csdn.net/q947817003/article/details/16370735

    三、通过oracle event来dump数据文件头、日志文件头、控制文件头信息来获取DBID

    下面三种方法都 要求数据库在MOUNT或OPEN状态,且只能DUMP自己数据库的文件
    4.通过oracle event来dump数据文件头来获取DBID,详见:http://blog.csdn.net/q947817003/article/details/16369041
    5.通过oracle event来dump控制文件头来获取DBID,详见:http://blog.csdn.net/q947817003/article/details/16370273
    6.通过oracle event来dump REDO日志文件头来获取DBID,详见:http://blog.csdn.net/q947817003/article/details/16370539

    四、通过alter system dump logfile命令来DUMP REDO及归档日志

    这种方法数据库可以在NOMOUNT/MOUNT/OPEN阶段,只用指定文件名,就可以DUMP自己数据库或其它数据库的文件(传到当前库)。
    个人见解:
    在需要DBID才能进行数据恢复时,alter system dump logfile 'filename';明显适应更多更复杂的场景,因为REDO日志或归档日志总会剩一个两个的,凭此就可以找到DBID了,哈哈。

    7.通过alter system dump logfile命令来DUMP REDO日志文件头来获取DBID,详见:http://blog.csdn.net/q947817003/article/details/16370203
    8.通过alter system dump logfile命令来DUMP 归档日志文件头来获取DBID,方法了上一步完全一样。详见:http://blog.csdn.net/q947817003/article/details/16370203

    五.用BBED--未使用过,暂时不实验了。

    六、不是技术的技术---安装完成库后及时记录DBID、DB_NAME等信息--管理的数据库多可以打印成表格或者可以记录在本子上之类哈哈。

  • 相关阅读:
    Mvc5+Ef 6.0入门开发随笔(2.MVC的简单创建与使用图文详解)
    转载:CSDN mvc ef 的简单增删改查操作
    插件
    Jmeter-后置处理器--json提取器
    jmeter的几种参数化方式
    Python--变量命名规范
    Python--对list、tuple、dict的操作
    Python--列表中字符串按照某种规则排序的方法
    Python--遍历文件夹下所有文件和目录的方法(os.walk(rootdir)函数返回一个三元素元祖)
    Python--递归函数实现:多维嵌套字典数据无限遍历
  • 原文地址:https://www.cnblogs.com/fuhaots2009/p/3429241.html
Copyright © 2020-2023  润新知