客户端连接Oracle的几种方法


一、HOSTNAME方法
    对于网络结构比较单一,Oracle服务器比较少的情况下,可以使用HOSTNAME方法。不过这种方法有几个限制:
1、 必须使用TCP/IP协议
2、 不能使用高级管理工具,比如Oracle Connection Manager
3、 客户端必须有相应的扩展命名服务,比如DNS或HOSTS文件
4、 LISTENER的监听端口必须是1521
5、 服务器LISTENER必须设置GLOBAL_NAME
第5点在ORACLE10g SG中明确指定,但经下面测试,也可以不设置GLOBAL_NAME。
下面谈谈使用HOSTNAME连接ORACLE数据库的方法:
1、不设置GLOBAL_NAME方式
1)可以使用NET MANAGER工具配置概要文件,选择HOSTNAME,也可以直接编辑SQLNET.ORA文件,只保留HOSTNAME方法,如下:
# sqlnet.ora Network Configuration File:
G:\oracle\product\10.2.0\db_1\NETWORK\ADMIN\sqlnet.ora
#SQLNET.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: 连接超时
2、设置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;
已连接。
  • 1
  • 2
  • 下一页

相关内容