1、HOSTNAME方法數據庫
對於網絡結構比較單一,Oracle服務器比較少的狀況下,可使用HOSTNAME方法。不過這種方法有幾個限制:服務器
一、必須使用TCP/IP協議網絡
二、不能使用高級管理工具,好比Oracle Connection Manageroracle
三、客戶端必須有相應的擴展命名服務,好比DNS或HOSTS文件ide
四、 LISTENER的監聽端口必須是1521工具
五、服務器LISTENER必須設置GLOBAL_NAME測試
第5點在Oracle10g SG中明確指定,但經下面測試,也能夠不設置GLOBAL_NAME。視頻
下面談談使用HOSTNAME鏈接Oracle數據庫的方法:server
一、不設置GLOBAL_NAME方式教程
1)可使.Net MANAGER工具配置概要文件,選擇HOSTNAME,也能夠直接編輯SQ.Net.ORA文件,只保留HOSTNAME方法,以下:
# sq.Net.ora.Network Configuration File:
G:\Oracle\product\10.2.0\db_1.NetWORK\ADMIN\sq.Net.ora
#SQ.Net.AUTHENTICATION_SERVICES = (NTS)
NAMES.DIRECTORY_PATH= (HOSTNAME)
2)配置HOSTS文件,位於C:\WINDOWS\system32\drivers\etc
# Copyright (c) 1993-1999 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client host
127.0.0.1 localhost
192.168.0.172 ora10g #Oracle DATABASE SERVER
此處的ora10g 就是客戶端進行鏈接時@後面的鏈接串,即爲Oracle的SID_NAME。
3)服務器端LISTENER,以下:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(Oracle_HOME = G:\Oracle\product\10.2.0\db_1)
(PROGRAM = extproc)
)
(SID_DESC =
(SID_NAME = ora10g)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = linyuefe)(PORT = 1521))
)
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
)
)
4)鏈接Oracle
SQL> conn gddc/gddc@ora10g; --Oracle服務器的SID_NAME
已鏈接。
驗證一下是否是經過HOSTNAME方法進行鏈接的,咱們把HOSTS文件中的IP地址修改爲192.168.0.173,以下:
192.168.0.173 ora10g #Oracle DATABASE SERVER
再進行鏈接:
SQL> disconn
從 Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options 斷開
SQL> conn gddc/gddc@ora10g;
ERROR:
ORA-12170: TNS: 鏈接超時
二、設置GLOBAL_NAME方式
1)設置HOSTS文件,以下:
# Copyright (c) 1993-1999 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client host
127.0.0.1 localhost
192.168.0.172 linyuefe --linyuefe爲目標Oracle服務器的計算機名
2)服務器端LISTENER,設置GLOBAL_NAME,以下:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(Oracle_HOME = G:\Oracle\product\10.2.0\db_1)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = linyuefe) –linyuefe爲服務器計算機名
(SID_NAME = ora10g)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = linyuefe)(PORT = 1521))
)
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
)
)
3)鏈接Oracle
SQL> conn gddc/gddc@linyuefe;
已鏈接。
2、使用EZCONNECT方法
EZCONNECT方法Oracle10G新推出的功能,對於客戶端不須要任何配置,不過有如下幾個限制:
一、客戶端必須安裝Oracle.Net Services 10g
二、客戶端和服務器端必須支持TCP/IP協議
下面介紹EZCONNECT的用法:
1)設置概要文件,以下 :
# sq.Net.ora.Network Configuration File: G:\Oracle\product\10.2.0\db_1.NetWORK\ADMIN\sq.Net.ora
NAMES.DIRECTORY_PATH= (EZCONNECT)
2) 進行鏈接
SQL> conn gddc/gddc@linyuefe:1521/ora10g;
已鏈接。
其中,linyuefe爲服務器機器名也能夠是IP地址,1521爲監聽端口(不指定的話默認爲1521),ora10g爲數據庫Service Name。
--使用默認端口
SQL> disconn
從 Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options 斷開
SQL> conn gddc/gddc@linyuefe/ora10g;
已鏈接。
--使用IP
SQL> disconn
從 Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options 斷開
SQL> conn gddc/gddc@192.168.0.172/ora10g;
已鏈接。
--只使用主機名
SQL> conn gddc/gddc@linyuefe;
已鏈接。
3、TNSNAME方法
這種方法是平時使用得最多的方法,在這裏也不作介紹
oracle視頻教程請關注:http://down.51cto.com/4202939/up