您所在的位置: > 主页 > 江苏网视 > 科技 > 正文
如何快速切换到其他数据库实例来源: 日期:2020-03-28 07:11:16  阅读:-

    在一台机器上有多个实例,如何快速切换到其他实例呢 ?
    以前,我们一般是通过export ORACLE_SID=newsid方式来完成,其实,我们安装了oracle数据库后,数据库已经帮我们创建 了一个脚本 oraenv 来快速帮我们做这个,在切换oracle_sid的同时,还帮我们切换了oracle_home
    比如我现在要切换到 emrep.
    [oracle@dbserver ~]$ . oraenv
    ORACLE_SID = [orcl] ? emrep
    The Oracle base remains unchanged with value /u01/app/oracle
    [oracle@dbserver ~]$ echo $ORACLE_SID
    emrep
    [oracle@dbserver ~]$ echo $ORACLE_HOME
    /u01/app/oracle/product/12.1.0/dbhome_1
    [oracle@dbserver ~]$
    我要切换回 orcl呢
    [oracle@dbserver ~]$ . oraenv
    ORACLE_SID = [emrep] ? orcl
    The Oracle base remains unchanged with value /u01/app/oracle
    [oracle@dbserver ~]$ echo $ORACLE_SID
    orcl
    [oracle@dbserver ~]$ echo $ORACLE_HOME
    /u01/app/oracle/product/12.1.0/dbhome_1
    [oracle@dbserver ~]$
    我想切换到没有的新的实例名呢
    比如,我准备新建一个auxdb实例
    [oracle@dbserver ~]$ . oraenv
    ORACLE_SID = [orcl] ? auxdb
    ORACLE_HOME = [/home/oracle] ? /u01/app/oracle/product/12.1.0/dbhome_1
    The Oracle base remains unchanged with value /u01/app/oracle
    [oracle@dbserver ~]$ echo $ORACLE_SID
    auxdb
    [oracle@dbserver ~]$ echo $ORACLE_HOME
    /u01/app/oracle/product/12.1.0/dbhome_1
    [oracle@dbserver ~]$
    这些信息来自哪里呢
    其实,他们在 /etc/oratab里面
    我们可以把新加的实例添加进去。
    [oracle@dbserver ~]$ cat /etc/oratab
    emrep:/u01/app/oracle/product/12.1.0/dbhome_1:N
    orcl:/u01/app/oracle/product/12.1.0/dbhome_1:N
    rcat:/u01/app/oracle/product/12.1.0/dbhome_1:N
    cdb1:/u01/app/oracle/product/12.1.0/dbhome_1:N
    我们添加进去
    echo auxdb:/u01/app/oracle/product/12.1.0/dbhome_1:N >> /etc/oratab
    [oracle@dbserver ~]$ cat /etc/oratab
    。。。
    emrep:/u01/app/oracle/product/12.1.0/dbhome_1:N
    orcl:/u01/app/oracle/product/12.1.0/dbhome_1:N
    rcat:/u01/app/oracle/product/12.1.0/dbhome_1:N
    cdb1:/u01/app/oracle/product/12.1.0/dbhome_1:N
    auxdb:/u01/app/oracle/product/12.1.0/dbhome_1:N
    [oracle@dbserver ~]$
    再次去切换:
    [oracle@dbserver ~]$ . oraenv
    ORACLE_SID = [auxdb] ? auxdb
    The Oracle base remains unchanged with value /u01/app/oracle
    好了,到此结束。

    (正文已结束)

    免责声明及提醒:此文内容为本网所转载企业宣传资讯,该相关信息仅为宣传及传递更多信息之目的,不代表本网站观点,文章真实性请浏览者慎重核实!任何投资加盟均有风险,提醒广大民众投资需谨慎!