mofdan 发表于 2018-9-13 11:13:00

Oracle客户端连接server 的方法,Oracle客户端如何连接server

  一、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,也可以直接编辑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>  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;
  已连接。
  二、使用EZCONNECT方法
  EZCONNECT方法Oracle10G新推出的功能,对于客户端不需要任何配置,不过有以下几个限制:
  1、客户端必须安装Oracle.Net Services 10g
  2、客户端和服务器端必须支持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>  With the Partitioning, OLAP and Data Mining options 断开
  SQL> conn gddc/gddc@linyuefe/ora10g;
  已连接。
  --使用IP
  SQL> disconn

  从 Oracle Database 10g Enterprise Edition>  With the Partitioning, OLAP and Data Mining options 断开
  SQL> conn gddc/gddc@192.168.0.172/ora10g;
  已连接。
  --只使用主机名
  SQL> conn gddc/gddc@linyuefe;
  已连接。
  三、TNSNAME方法
  这种方法是平时使用得最多的方法,在这里也不做介绍
  oracle视频教程请关注:http://down.51cto.com/4202939/up

页: [1]
查看完整版本: Oracle客户端连接server 的方法,Oracle客户端如何连接server