关于oracle11g简单的网络配置

大家在学习oracle的时候,网络配置和os认证一般很困扰,下面来介绍下关于oracle的网络配置。

    我的服务器是在虚拟机里,客户端是在我的电脑上。我的oracle服务器基本信息:

数据库名:orcl3939    ip:178.3.601.172           虚拟机名: localhost.localdomain           数据库全局名:orcl3939.localdomain

客户端是从oracle官网上下载的win64_11gR2_client,第三方工具使用的是PL/SQL DEVELOPER

下面介绍一下网络配置方面的一些名词:

Global_name:对一个数据库(Oracle database)的唯一标识,oracle建议用此种方法命令数据库。该值是在创建数据库是决定的,缺省值为Db_name. Db_domain。

DB_NAME:

DB_NAME概念相比于INSTANCE_NAME要重要的多,它决定实例将挂在的数据文件。它出现在数据文件,控制文件,日志文件中。在参数文件中也出现,且必须出现。这个参数涉及到系统的物理文件。
SERVICE_NAME和GLOBAL_DBNAME:
 这两个参数之所以放在一起讲,是因为他们往往是成对出现的。SERVICE_NAME出现在Tnsnames.ora文件中,是客户端要请求的服务名。

Service_name:该参数是oracle8i新引进的。在8i以前,我们用SID来表示标识数据库的一个实例,但是在Oracle的并行环境中,一个数据库对应多个实例,这样就需要多个网络服务名,设置繁琐。为了方便并行环境中的设置,引进了Service_name参数,该参数对应一个数据库,而不是一个实例,而且该参数有许多其它的好处。该参数的缺省值为Db_name. Db_domain,即等于Global_name。一个数据库可以对应多个Service_name,以便实现更灵活的配置。该参数与SID没有直接关系,即不必Service name 必须与SID一样。

Net service name:网络服务名,又可以称为数据库别名(database alias)。是客户端程序访问数据库时所需要,屏蔽了客户端如何连接到服务器端的细节,实现了数据库的位置透明的特性。

ORACLE_SID(INSTANCE_NAME):(ORACLE SYSTEM IDENTIFIER)

以环境变量的形式出现的。
Oracle实例是由SGA和一组后台进程组成的,实例的创建和启动需要一个参数文件,而参数文件的名称就是由ORACLE_SID决定的。对于init文件,缺省的文件名称是init<ORACLE_SID>.ora,对于spfile文件,缺省的文件名称是spfile<ORACLE_SID>.ora
设置不同的ORACLE_SID值,就可以默认使用不同的参数文件启动不同的数据库实例。
另外,ORACLE_SID的作用远远不是作为一个实例入口这么简单的,在实例启动后,实例名称INSTANCE_NAME也是从ORACLE_SID得到的。

ORACLE_SID参数,这个参数是操作系统中用到的,它是描述我们要默认连接的数据库实例.

instance_name是oracle数据库参数。而ORACLE_SID是操作系统的环境变量,ORACLE_SID必须与instance_name的值一致.

INSTANCE_NAME:

实例名称,这是Oracle实例的名字,用来区分不通的实例。在Oracle9i之前,该名字存储在两个地方:参数文件和数据库的内部视图(V$INSTANCE).
而在Oracle10g之后的版本中,该名字不再出现在参数文件中,而是动态从系统中获得,默认是取自ORACLE_SID。
INSTANCE_NAME的作用除了区别不同实例之外,在监听器动态注册时,还会用于向监听器注册。比如instance_name=kanon,监听中将动态注册Instance "kanon",status READY信息。

因为我的服务器是在安装在虚拟机linux下的,所以虚拟机的网络配置也很重要,虚拟机选择桥接连接模式,自动获取ip(在虚拟网络编辑器里一定要主要网卡的选择,这个可能造成你网连不通),vim  /etc/sysconfig/network-ig/network-scripts/ifcfg-eth0(注意红颜色部分)

TYPE=Ethernet
DEVICE=eth0
HWADDR=00:50:56:34:9c:ed
BOOTPROTO=dhcp
ONBOOT=yes
USERCTL=no
IPV6INIT=no
PEERDNS=yes
CHANNEL=自动
MODE=Auto
SECURITYMODE=off
RATE=auto

这一切弄好后,可以ifconfig或者在我电脑上ping 178.3.601.172

来自 172.18.112.178 的回复: 字节=32 时间=3ms TTL=64
来自 172.18.112.178 的回复: 字节=32 时间<1ms TTL=64
来自 172.18.112.178 的回复: 字节=32 时间<1ms TTL=64
来自 172.18.112.178 的回复: 字节=32 时间<1ms TTL=64
172.18.112.178 的 Ping 统计信息:
    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
    最短 = 0ms,最长 = 3ms,平均 = 0ms

看到了吧,虚拟机和电脑网络是通的。


服务器的网络配置:

服务器端的配置是配置监听,也就是配置../dbhome/network/admit/listener.org

默认的监听是listener,我加了一个监听(listener1):

                            

LISTENER1 =

  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1522))
    )
  )          

[[email protected] ~]$ lsnrctl start listener1;

LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 17-12月-2014 13:11:24

Copyright (c) 1991, 2009, Oracle.  All rights reserved.

启动/u01/app/oracle/product/11.2.0/dbhome_1/bin/tnslsnr: 请稍候...

TNSLSNR for Linux: Version 11.2.0.1.0 - Production
系统参数文件为/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
写入/u01/app/oracle/diag/tnslsnr/localhost/listener1/alert/log.xml的日志信息
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost.localdomain)(PORT=1522)))

正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost.localdomain)(PORT=1522)))
LISTENER 的 STATUS
------------------------
别名                      listener1
版本                      TNSLSNR for Linux: Version 11.2.0.1.0 - Production
启动日期                  17-12月-2014 13:11:27
正常运行时间              0 天 0 小时 0 分 5 秒
跟踪级别                  off
安全性                    ON: Local OS Authentication
SNMP                      OFF
监听程序参数文件          /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
监听程序日志文件          /u01/app/oracle/diag/tnslsnr/localhost/listener1/alert/log.xml
监听端点概要...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost.localdomain)(PORT=1522)))
监听程序不支持服务
命令执行成功


我所加的监听listener1是动态注册,我们也可以静态注册。如下:

              LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521))
    )
  )
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = orcl3939)
      (ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1)
        (GLOBAL_DBNAME = orcl3939.localdomain)
    )
)

以上所涉及到的名词不在赘述,开头已经介绍。

我们来启动静态监听listener:

 [[email protected] ~]$ lsnrctl start listener;

LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 17-12月-2014 13:18:15

Copyright (c) 1991, 2009, Oracle.  All rights reserved.

启动/u01/app/oracle/product/11.2.0/dbhome_1/bin/tnslsnr: 请稍候...

TNSLSNR for Linux: Version 11.2.0.1.0 - Production
系统参数文件为/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
写入/u01/app/oracle/diag/tnslsnr/localhost/listener/alert/log.xml的日志信息
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost.localdomain)(PORT=1521)))

正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost.localdomain)(PORT=1521)))
LISTENER 的 STATUS
------------------------
别名                      listener
版本                      TNSLSNR for Linux: Version 11.2.0.1.0 - Production
启动日期                  17-12月-2014 13:18:15
正常运行时间              0 天 0 小时 0 分 1 秒
跟踪级别                  off
安全性                    ON: Local OS Authentication
SNMP                      OFF
监听程序参数文件          /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
监听程序日志文件          /u01/app/oracle/diag/tnslsnr/localhost/listener/alert/log.xml
监听端点概要...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost.localdomain)(PORT=1521)))
服务摘要..
服务 "orcl3939.localdomain" 包含 1 个实例。
  实例 "orcl3939", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
命令执行成功

此时oracle的服务器端已经配置好了,那我们再配置客户端。


客户端的网络配置:

客户端的配置,推荐用oracle net mananger配置其实就是配置服务命名和监听,oracle把很多东西都包装在服务命名中,服务命名此时就是一个数据库,可以这么理解。

首先我们手动配置:

手动配置tns:

F:\product\11.2.0\client\network\admin下配置tnsnames.ora文件:

JINGTAI(很多人都问,这里要填什么,你填什么都可以) =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 178.3.601.172 )(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = orcl3939.localdomain)
    )
  )

   手动配置listener:

woo =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 178.3.601.172)(PORT = 1521))
  )

SID_LIST_888 =
  (SID_LIST =
    (SID_DESC =
      (GLOBAL_DBNAME = orcl3939.localdomain)
      (SID_NAME = orcl3939)
    )
  )

      到这里我们手动配置客户端就OK了,下面我们介绍利用oracle net mananger来配置。


利用oracle net mananger:

在oracle net mananger 里新建一个服务命名wo(你写啥都可以):

 这里的主机名:填写服务器所在的ip地址

 服务名:填写全局数据库名

 端口号:和你tns中对应配置的相同。

接下来我们来配置一些监听:

新建一个监听woo(你写啥都行):

监听位置里对应的主机写ip.

数据库服务里的oracle主目录是可选的。

接下来我们可以tnsping wo:

C:\Users\Administrator>tnsping wo
TNS Ping Utility for 32-bit Windows: Version 11.2.0.1.0 - Production on 17-12月-
2014 13:48:44
Copyright (c) 1997, 2010, Oracle.  All rights reserved.
已使用的参数文件:
F:\app\Administrator\product\11.2.0\client\network\admin\sqlnet.ora

已使用 TNSNAMES 适配器来解析别名
尝试连接 (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST =178.3.601.172   )(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = orcl3939.localdomain))
)
OK (120 毫秒)

测试结果:



已经ok啦。

此时我们打开第三方工具pl/sql developer时:


以上就是比较基本的oracle客户端连接服务器端的网络配置,希望对大家有用。

时间: 2024-10-13 16:53:01

关于oracle11g简单的网络配置的相关文章

Centos6 克隆后的简单的网络配置

第一步:修改主机名 $ vi /etc/sysconfig/network 第二步: $ vi  /etc/udev/rules.d/70-persistent-net.rules 注: ①注释掉第一网卡驱动红色标注地方 ②修改第二个网卡驱动name="eth0" ③记住第二个ATTR{address}=="00:0c:29:95:4a:d3". VIM非编辑模式下,将光标移动到第一个0位置,按y17l (从光标位置开始,从左向右拷贝17个字符) # PCI dev

Docker Network Configuration 高级网络配置

Network Configuration TL;DR When Docker starts, it creates a virtual interface named docker0 on the host machine. It randomly chooses an address and subnet from the private range defined by RFC 1918 that are not in use on the host machine, and assign

简单的模拟小型公司网络配置实验

实验名称: 简单的模拟小型公司的构建网络配置实验实验要求:1.R1\R2\R3分别连接不同的楼宇 A\B\C2.楼宇A .#存在 VLAN 10 .vlan 20 . vlan 30 网段为: 192.168.10.0/24192.168.20.0/24192.168.30.0/24#PC-1/3 属于 vlan 10 ,自动获取ip地址:#pc-2/4 属于 vlan 20 ,自动获取ip地址:#sw5作为 DHCP 服务器,属于 vlan 30:#sw1与sw5 的弧线端口的模式为 hybr

oracle11g网络配置

网络连接:安装完成后,客户端和服务端都需要进行网络配置才能进行网络连接,服务端要配置监听器,客户端要配置网络服务名:服务端启动程序:如果客户端与服务端不在同一个主机上,要求启动监听器和数据库两个服务:如果在同一个主机上,启动数据库服务即可:网络配置的三个文件:listener.ora.sqlnet.ora.tnsnames.ora,位于oracle安装目录下的network目录下:客户端连接两种方式:一种是简单连接(客户端不需要任何设置).一种是本地命令(需要在tnsnames.ora中进行配置

CentOS的网络配置简析

我们在进行对CentOS的网络配置时,一般会从IP地址(IPADDR).子网掩码(NETMASK).网关(Gateway).主机名(HOSTNAME).DNS服务器等方面入手.而在CentOS中,又有着不同的命令或配置文件可以完成这些配置操作,接下来,我们将从ifcfg系命令,iproute2系命令以及配置文件3个方面来简析网络配置的方法. 一.ifcfg系命令 ifcfg系命令包括ifconfig,route,netstat和hostname. 1.ifconfig命令 用来配置一个网络接口.

linux 基础 (二) 网络配置、测试

查看,修改主机名 hostname 查看主机名,临时更改主机名,永久更改主机名 vi /etc/sysconfig/network  将HOSTNAME字段修改成用户所需主机名保存退出即可,例如: 查看主机名 临时修改主机名 永久修改主机名(vi /etc/sysconfig/network)更改HOSTNAME 更改后可以使用hostname  主机名 进行生效  不需要重启即可 网络配置 1.修改配置文件 ,永久生效 vi /etc/sysconfig/network-scripts/ifc

kvm 网络配置之nat、用户模式

接上篇,kvm的网络配置,参考书本:<kvm虚拟化技术 实现以及原理解析> 2. nat模式 nat模式自动获取ip需要dhcp服务,nat功能本身需要ip伪装,既然是一个网络,所以还需要虚拟网桥功能,所以需要的软件如下: dhcp功能:dnsmasq ip伪装:iptables 虚拟网桥:bridge-utils 实现: (1)yum install dnsmasq iptables bridge-utils -y#如果iptables是为内核的netfilter模块提供规则,如果内核不支持

Centos的网络配置命令和文件

一.ifcongfig Centos6之前最常用的配置网络命令就是ifconfig,使用ifconfig命令时最好切换到root用户的身份 1.直接使用ifconfig可以查看当前配置的网络设备的信息 例如 [[email protected] ~]# ifconfig eno16777728: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500         inet 172.16.9.9  netmask 255.255.0.0  b

Cisco UCS环境中CentOS带Vlan ID的网络配置指南

最近新进了一批Cisco UCS C系列服务器,经过两周的部署安装终于可以进行测试了.本文简要介绍一下cisco UCS服务器中操作系统(CentOS 6)的网络配置.可以简单的认为,本文描述的是一台物理服务器用网线将网卡连接到上层交换机的trunk模式的端口中的网络配置. 物理连接拓扑图如下所示. 顶层采用Cisco C3560物理交换机,为整个机群提供Internet连接.Vlan划分为两个,一个管理Vlan一个应用Vlan,Vlan ID分别为4和31,上联端口全部设置为trunk模式.