ORACLE配置tnsnames.ora文件实例
SQL SERVER你使用客户端的时候,会自动搜过局域网内的在线的数据库,你就可以清楚知道哪台可以连。但ORACLE不同,不能像SQL SERVER列出来。ORACLE的客户机为了和服务器连接,必须先和服务器上的监听进程联络。ORACLE通过tnsnames.ora文件中的连接描述符来说明连接信息。一般tnsnames.ora 是建立在客户机上的。如果是客户机/服务器结构,整个网络上只有一台机器安装了ORACLE数据库服务器,那么只需在每个要访问ORACLE服务器的客户机上定义该文件,在服务器上无需定义。但是,如果网络上有多台机器均安装了ORACLE数据库服务器,并且服务器之间有数据共享的要求,那么在每台服务器上都必须定义该文件。tnsnames.ora文件缺省放在/ORACLE_HOME/ product/8.1.7/network/admin目录下。
tnsnames.ora是配置连接字符串的,会配置你连的IP,端口,数据库实例等信息记录客户端访问数据库的本地配置。下面是tnsnames.ora的文件样式:
_____________________________________________________________分割线________________________________________________________________
ORA817 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = sun62)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = ora817.huawei.com)
)
)
INST1_HTTP =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = sun62)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = SHARED)
(SERVICE_NAME = ora817.huawei.com)
(PRESENTATION = http://admin)
)
)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)
________________________________________________________分割线______________________________________________________________
字段含义如下:
ADDRESS_LIST | 表示该客户机要经由多种协议与一台或多台服务器连接。在该样式文件中就表示该客户机要用TCP/IP协议来和服务器相连 |
PROTOCOL | 指明要连接使用的协议 |
SERVICE_NAME | “SERVICE_NAME”就是“GlobalDatabase Name”,ORACLE8i数据库使用“GlobalDatabaseName”来唯一标识自己,通常的格式为“name.domain”,此处的值为“ora817.huawei.com” |
HOST | 是TCP/IP协议使用的服务器IP地址 |
PORT | 是TCP/IP使用的端口地址 |
SID | 指定要连接的服务器上ORACLE数据库的ORACLE_SID |
SERVER=DEDICATED | 表示用专用服务器连接ORACLE数据库。 |
下面是一个tnsnames.ora文件内容举例:
ora = //连接描述符名:ora
(description = //描述
(address = //网络地址之一
(protocol = tcp) //网络协议(tcp表示TCP/IP协议)
(host = 129.9.114.22) //服务器IP地址:129.9.114.22
(port = 1251) //服务器端口号:1251
)
(connect_data = //连接数据
(sid = ora7) //数据库标识名:ora7
(SERVER = DEDICATED)
(SERVICE_NAME = ora9i)
)
)