• [Oracle Mgmt]Running Multiple Instances on Windows


    在Windows平台上启动多个Instance比在UNIX环境下要繁琐一点,需要用到ORADIM来创建新的ORACLE_SID.

    现在假设在一台Windows PC上装了一个名字为ORCL的Oracle数据库,默认情况下启动的都是这个对应于这个ORACLE_SID的instance, 现在如果我需要在这台机器上启动另外一个instance (假设名字叫ORCL2),该怎么办呢?

    首先先创建另外一个参数文件initorcl2.ora用来启动orcl2这个instance, 内容如下,

    db_name=orcl2

     

    先看看如果不用ORADIM会怎么样,

    C:\Documents and Settings\szuser>set ORACLE_SID=orcl
     
    C:\Documents and Settings\szuser>sqlplus /nolog
     
    SQL*Plus: Release 10.2.0.4.0 - Production on Mon Jan 18 11:33:52 2010
     
    Copyright (c) 1982, 2007, Oracle.  All Rights Reserved.
     
    SQL> conn / as sysdba
    Connected to an idle instance.
    SQL> startup
    ORACLE instance started.
     
    Total System Global Area  612368384 bytes
    Fixed Size                  1298208 bytes
    Variable Size             230686944 bytes
    Database Buffers          373293056 bytes
    Redo Buffers                7090176 bytes
    Database mounted.
    Database opened.
    SQL>

     

    现在启动了默认的instance, 现在如果我再启动名字为orcl2的instance,

    C:\Documents and Settings\szuser>SET ORACLE_SID=orcl2
     
    C:\Documents and Settings\szuser>sqlplus /nolog
     
    SQL*Plus: Release 10.2.0.4.0 - Production on Mon Jan 18 11:47:24 2010
     
    Copyright (c) 1982, 2007, Oracle.  All Rights Reserved.
     
    SQL> conn / as sysdba
    ERROR:
    ORA-12560: TNS:protocol adapter error
     
     
    SQL>

    可以看出在尝试startup 之前就出现了错误ORA-12560.  原因是因为在Windows平台下,需要对每个instance先启动一个服务来初始化环境,因为没有对应于orcl2的service,因此会出现问题。

    现在用ORADIM来为orcl2创建服务,

     
    C:\Documents and Settings\szuser>oradim -new -sid orcl2
    Instance created.

    这时候会在Windows的Services控制面板中看到一个新的服务项,

    飞信截屏未命名3

    然后就可以启动这个orcl2 instance了,不过注意的是只能startup到nomount状态,因为数据库orcl2还不存在呢。

    这样就可以在同一台机器上启动多个oracle instance了!

    C:\Documents and Settings\szuser>set ORACLE_SID=orcl2
     
    C:\Documents and Settings\szuser>sqlplus /nolog
     
    SQL*Plus: Release 10.2.0.4.0 - Production on Mon Jan 18 11:34:45 2010
     
    Copyright (c) 1982, 2007, Oracle.  All Rights Reserved.
     
    SQL> conn / as sysdba
    Connected to an idle instance.
     
    SQL> startup nomount pfile=E:\oracle\product\10.2.0\db_1\database\initorcl2.ora
    ORACLE instance started.
     
    Total System Global Area  117440512 bytes
    Fixed Size                  1295320 bytes
    Variable Size              58723368 bytes
    Database Buffers           50331648 bytes
    Redo Buffers                7090176 bytes
     

    从Oracle的文档里面也可以看到如何实现在同一台机器上run多个instance,

    Running Multiple Instances

     

    To run multiple instances:

    1. 1. Start the service for each instance using ORADIM utility or the Services dialog box of the Control Panel.
    2. 2. At the command prompt set the ORACLE_SID configuration parameter to the SID for the first instance to run:
      C:\> SET ORACLE_SID=SID
      
      

      where SID is the name of the Oracle9i database instance.

    3. 3. Start SQL*Plus:
      C:\> sqlplus / NOLOG
      
      
    4. 4. Connect AS SYSDBA:
      SQL> CONNECT / AS SYSDBA
      
      
    5. 5. Start up the first instance:
      SQL> STARTUP PFILE=ORACLE_BASE\admin\db_name\pfile\init.ora
      
      

      where ORACLE_BASE is c:\oracle (unless you changed it during installation) and db_name is the name of the instance.

    6. Repeat Steps 2-5 for the other instances to run.
  • 相关阅读:
    OpenCL、CUDA
    最小和最廉价的超级计算机,DIY的
    组装属于您自己的Tesla个人超级计算机
    多处理器系统
    开源项目Spark简介
    基于Cassandra的日志和分布式小文件存储系统【1】
    网络广告js备忘【2】
    网络广告js备忘【1】
    成功产品的意外
    Cassandra HBase和MongoDb性能比较
  • 原文地址:https://www.cnblogs.com/fangwenyu/p/1650593.html
Copyright © 2020-2023  润新知