广

oracle数据库

  • MYSQL
  • MSSQL
  • Redis
  • MongoDB
  • oracle数据库
  • 数据管理

    关于oracle配置多个数据库的问题

    2018-04-13 09:17:17 次阅读 稿源:互联网
    广告
    全网推广平台,软文发布

      Oracle中可以配多个数据库,并只需要开启一个侦听器就可以了,对多个数据库只要配置相应的服务命名就可以连接了。

      我用的是Oracle 8.1.7 Enterprise Edition,OS是Windows 2000 Server,我把我的配置过程和情况图解说明一下,和大家共同探讨。

      

      第一步:用Net8 Configuration Assistant工具配置监听器,一直点下一步,最后完成即可!监听地址一般配成默认的1521就可以了。

      也可以用Net8 Assistant工具来验证或配置监听器,如下图,可以配置主机和端口。

      

      第二步:用Net8 Assistant工具来配置命名服务,如下图:

      注意服务名是数据库名,主机名和端口号一定要和监听器的一样!

      

      测试一下,连接成功,OK!

      

      好,再配第二个库的服务命名,如下图:

      注意服务名要对应到第二个数据库名!

      

      再测试一下第二个库的连接,连接成功,OK!

      

      最后有几点注意:

      1.对一般如果有多个应用程序用Oracle的数据库,一般只需要建立一个数据库就可以了,对不同的应用设立不同的用户(不同的表空间)就可以了。

      2.如果多个应用程序的字符集不一样,如既有BIG5又有GB2312,那一般就需要考虑配置多个服务器,或者建立多个数据库,或者转换到UTF-8之类的字符集。

      3.如果开发需要装多个版本的Oracle,如同时安装Oracle9i和Oracle8.1.7,则需要配置各自的监听端口,环境变量没有什么需要配置的,不会冲突;注册表都放在HKEY_LOCAL_MACHINESOFTWAREORACLE下,但是会分HOME0~HOME...不同的Key中存放,所以也不会有冲突。

      4.配置命名服务和监听器还可以直接编辑如下2个文件:

      监听器:$ORACLE_HOME$etworkADMINlistener.ora,一般文件如下:

      # LISTENER.ORA Network Configuration File: D:DATABAseoracle81etworkadminlistener.ora

      # Generated by Oracle configuration tools.

      LISTENER =

      (DESCRIPTION_LIST =

      (DESCRIPTION =

      (ADDRESS_LIST =

      (ADDRESS = (PROTOCOL = TCP)(HOST = HARRY)(PORT = 1521))

      )

      )

      )

      SID_LIST_LISTENER =

      (SID_LIST =

      (SID_DESC =

      (SID_NAME = PLSExtProc)

      (ORACLE_HOME = D:DATABAseoracle81)

      (PROGRAM = extproc)

      )

      (SID_DESC =

      (GLOBAL_DBNAME = ORASUN)

      (ORACLE_HOME = D:DATABAseoracle81)

      (SID_NAME = ORASUN)

      )

      (SID_DESC =

      (GLOBAL_DBNAME = ORAGCE)

      (ORACLE_HOME = D:DATABAseoracle81)

      (SID_NAME = ORAGCE)

      )

      )

      服务命名:$ORACLE_HOME$etworkADMIN nsnames.ora,一般文件如下:

      # TNSNAMES.ORA Network Configuration File: D:DATABAseoracle81NETWORKADMIN nsnames.ora

      # Generated by Oracle configuration tools.

      SMEST =

      (DESCRIPTION =

      (ADDRESS_LIST =

      (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))

      )

      (CONNECT_DATA =

      (SERVICE_NAME = ORAGCE)

      )

      )

      SMEDI =

      (DESCRIPTION =

      (ADDRESS_LIST =

      (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))

      )

      (CONNECT_DATA =

      (SERVICE_NAME = ORASUN)

      )

      )

      INST1_HTTP =

      (DESCRIPTION =

      (ADDRESS_LIST =

      (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))

      )

      (CONNECT_DATA =

      (SERVER = SHARED)

      (SERVICE_NAME = ORAGCE)

      (PRESENTATION = http://admin)

      )

      )

      EXTPROC_CONNECTION_DATA =

      (DESCRIPTION =

      (ADDRESS_LIST =

      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))

      )

      (CONNECT_DATA =

      (SID = PLSExtProc)

      (PRESENTATION = RO)

      )

      )

      这2个文件在$ORACLE_HOME$etworkADMINSAMPLE下有相应的范例文件,可以参考。

      监听器配置修改后,需要重新启动监听器的服务!!!

      再补充一点,配置多个侦听器或者一个侦听器侦听多个数据库的时候,对侦听器注意需要配置数据库服务。

      如图,一个侦听器侦听多个数据库,如下配置,数据库名和SID分别是ORASUN和ORAGCE,同样配多个侦听器侦听一个数据库(分别对内网和外网提供),如果碰到连接问题,请大家检查一下数据库配置这一项,当然如果直接写文件来配置就很简单了,一下就可以搞定了,大家也可以对照我前面给出的配置文件看一下。

      

    一起学吧部分文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与一起学吧进行文章共享合作。

    广告
    广告
    广告
    广告