程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> 關於oracle配置多個數據庫的問題

關於oracle配置多個數據庫的問題

編輯:Oracle數據庫基礎

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:DATABASEOracle81 etworkadminlistener.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,同樣配多個偵聽器偵聽一個數據庫(分別對內網和外網提供),如果碰到連接問題,請大家檢查一下數據庫配置這一項,當然如果直接寫文件來配置就很簡單了,一下就可以搞定了,大家也可以對照我前面給出的配置文件看一下。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved