• RMAN创建辅助实例(副本数据库)


    辅助实例是创建副本数据库的重要一步,一般而言会有下列几个步骤

    一、创建辅助实例的密码文件

    orapwd file=$\database\PWDjssdup.ora password=oracle entries=30

    二、连接实例

    注意,windows环境需要先通过ORADIM命令创建一个新的OracleService, Linux环境可以跳过这一步,其它操作还是要继续。

    oradim -new -sid jssdup

    然后配置监听,修改tnsname.ora。总之能够连接上辅助实例就可以了。

    三、创建辅助实例的初始化参数文件

    1. 手工创建相应目录

    2. 创建本地初始化参数文件并修改参数

    在源数据库生成pfile

    SQL> create pfile='D:\learnoracle\pfile.ora' from spfile;

    用记事打开并更改相应的参数。并添加以下两参数:

    db_file_name_convert='oradata\jssweb','oradata\jssdup'
    log_file_name_convert='oradata\jssweb','oradata\jssdup'

     3. 在辅助数据库中创建初始化参数文件-在primary数据库生成的pfile基础上修改

    SQL> create spfile from pfile='D:\learnoracle\pfile.ora';

     4. 启动辅助实例

    接着上一步创建完spfile之后:

    SQL> startup force nomount;

     

    5. 确保源数据库处于mount或open的状态

     

    6. 确认拥有必备的备份

     

    7. 分配辅助通道

     首先运行rman连接到目标数据库和辅助实例

    set oracle_sid=orcl
    
    rman target/ auxiliary sys/oracle@jssdup

    这里可能会出现如下的错误信息:

    Recovery Manager: Release 11.1.0.6.0 - Production on Wed Nov 7 01:45:35 2007
    Copyright (c) 1982, 2007, Oracle. All rights reserved.
    
    connected to target database: ORA11G (DBID=4026820313)
    RMAN-00571: ===========================================================
    RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
    RMAN-00571: ===========================================================
    RMAN-00554: initialization of internal recovery manager package failed
    RMAN-04006: error from auxiliary database: ORA-12528: TNS:listener: all appropriate instances are blocking new connections

    造成这个问题的原因是,实例虽然启动,但是没有注册到监听。实例是通过PMON进程注册到监听上的,而PMON进程需要在MOUNT状态下才会启动。因此造成了上面的错误。

    Oracle给出了两种解决方案,一种方法是对AUXILIARY数据库直接使用/,对TARGET数据库通过网络访问。

    a. rman target sys/oracle@orcl auxiliary /

    b. 为AUXILIARY数据库设置静态监听

    SID_LIST_LISTENER =
    (SID_LIST =
    (SID_DESC =
    (SID_NAME = jssdup)
    (ORACLE_HOME = /data/oracle/product/11.1)
    )
    )

     

    启动正常后分配通道。如下例:

    RMAN>RUN
    
    {
    
    ALLOCATE AUXILIARY CHANNEL aux1 DEVICE TYPE DISK;
    
    ALLOCATE AUXILIARY CHANNEL aux2 DEVICE TYPE DISK;
    
    ALLOCATE AUXILIARY CHANNEL aux3 DEVICE TYPE DISK;
    
    DUPLICATE TARGET DATABASE TO jssdup;
    
    release channel aux1;
    
    release channel aux2;
    
    release channel aux3;
    
    }

     执行到这一步辅助实例就已创建完成了:)

     

    删除辅助数据库

    -只须通过dbca即可

  • 相关阅读:
    Java字符串(String类)
    Java异常处理
    Scanner使用方法
    OOP之重载
    构造函数和析构函数
    类、对象、方法
    函数
    数组
    ahk之路:利用ahk在window7下实现窗口置顶
    指针的问题
  • 原文地址:https://www.cnblogs.com/landexia/p/2613124.html
Copyright © 2020-2023  润新知