文档库 最新最全的文档下载
当前位置:文档库 › (完整)Listener.ora、sqlnet.ora、tnsnames.ora三个配置文件区别

(完整)Listener.ora、sqlnet.ora、tnsnames.ora三个配置文件区别

Listener。ora、sqlnet。ora、tnsnames.ora三个配置文件区别

分类:Oracle

2014-10—30 10:57:36

Listener.ora、sqlnet.ora、tnsnames。ora三个配置文件区别

listener。ora、sqlnet.ora、tnsnames。ora ,都是放在$ORACLE_HOME\network\admin目录

[oracle@testdb1 ~]$ cd /app/oracle/ora11g/network/admin

[oracle@testdb1 admin]$ ll

total 16

—rw-r—-r-—。 1 oracle oinstall 162 Oct 22 14:35 listener。ora

drwxr—xr—x. 2 oracle oinstall 4096 Jul 10 07:10 samples

—rw—r-—r--。 1 oracle oinstall 381 Dec 17 2012 shrept.lst

-rw-r——r—-。 1 oracle oinstall 367 Oct 22 14:33 tnsnames.ora

[oracle@testdb1 admin]$

三个文件的作用和使用

##########################################

sqlnet.ora--——-作用类似于linux或者其他unix的nsswitch。conf文件,通过这个文件来决定怎么样找一个连接中出现的连接字符串,

例如我们客户端输入

sqlplus sys/oracle@orcl

假如我的sqlnet。ora是下面这个样子

SQLNET.AUTHENTICATION_SERVICES= (NTS)

NAMES。DIRECTORY_PATH= (TNSNAMES,HOSTNAME)

那么,客户端就会首先在tnsnames.ora文件中找orcl的记录。如果没有相应的记录则尝试把orcl当作一个主机名,通过网络的途径去

解析它的ip地址然后去连接这个ip上GLOBAL_DBNAME=orcl这个实例,当然我这里orcl并不是一个主机名

如果我是这个样子

NAMES。DIRECTORY_PATH= (TNSNAMES)

那么客户端就只会从tnsnames.ora查找orcl的记录

括号中还有其他选项,如LDAP等并不常用.

#########################################

Tnsnames.ora—-——--这个文件类似于unix 的hosts文件,提供的tnsname到主机名或者ip的对应,只有当sqlnet。ora 中类似

NAMES。DIRECTORY_PATH= (TNSNAMES) 这样,也就是客户端解析连接字符串的顺序中有TNSNAMES是,才会尝试使用这个文件。

例子中有两个,ORCL 对应的本机,SALES对应的另外一个IP地址,里边还定义了使用主用服务器还是共享服务器模式进行连接,

一句一句说

#你所要连接的时候输入得TNSNAME

[oracle@testdb1 admin]$ cat tnsnames。ora

testdb1 =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.9.235)(PORT = 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = testdb1) #show parameter service_name;

)

)

testdb2 =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = 192。168。9。236)(PORT = 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = testdb2) #show parameter service_name;

客户端完了我们来看服务器端

listener。ora—-———-listener监听器进程的配置文件

关于listener进程就不多说了,接受远程对数据库的接入申请并转交给oracle的服务器进程。所以如果不是使用的远程的

连接,listener进程就不是必需的,同样的如果关闭listener进程并不会影响已经存在的数据库连接。Listener。ora文件的例子

[oracle@testdb1 admin]$ cat listener.ora

LISTENER =

(DESCRIPTION_LIST =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = 192。168。9。235)(PORT = 1521)) )

)

#监听器的名字,一台数据库可以有不止一个监听器

上面的例子是一个最简单的例子,但也是最普遍的。一个listener进程为一个instance(SID)提供服务。

多实例监听:

[oracle@testdb3 admin]:testdb1> cat listener.ora

LISTENER =

(DESCRIPTION_LIST =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = 192。168.9.235)(PORT = 1521)) )

)

SID_LIST_LISTENER =

(SID_LIST =

(SID_DESC =

(GLOBAL_DBNAME = testdb1)

(ORACLE_HOME = /app/oracle/ora11g)

(SID_NAME = testdb1)

(SID_DESC =

(GLOBAL_DBNAME = testdb3)

(ORACLE_HOME = /app/oracle/ora11g)

(SID_NAME = testdb3)

)

)

[oracle@testdb3 admin]:testdb1> cat tnsnames.ora

testdb1 =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.9.235)(PORT = 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = testdb1)

testdb2 =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168。9.236)(PORT = 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = testdb2)

)

testdb3 =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = 192。168。9。235)(PORT = 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = testdb3)

)

监听器的操作命令

$ORACLE_HOME/bin/lsnrctl start,其他诸如stop,status等.具体敲完一个lsnrctl后看帮助。上面说到的三个文件都可以通过图形的配置工具来完成配置

$ORACLE_HOME/netca 向导形式的

$ORACLE_HOME/netmgr

本人比较习惯netmgr,

profile 配置的是sqlnet.ora也就是名称解析的方式

service name 配置的是tnsnames。ora文件

listeners配置的是listener。ora文件,即监听器进程

具体的配置可以尝试一下然后来看一下配置文件。

这样一来总体结构就有了,是当你输入sqlplus sys/oracle@orcl的时候

1. 查询sqlnet。ora看看名称的解析方式,发现是TNSNAME

2. 则查询tnsnames。ora文件,从里边找orcl的记录,并且找到主机名,端口和service_name

3。如果listener进程没有问题的话,建立与listener进程的连接.

4. 根据不同的服务器模式如专用服务器模式或者共享服务器模式,listener采取接下去的动作.默认是专用服务器模式,没有问题的话客户端就连接上了数据库的server process。

5。这时候网络连接已经建立,listener进程的历史使命也就完成了。

几种连接用到的命令形式

1。sqlplus / as sysdba 这是典型的操作系统认证,不需要listener进程

2.sqlplus sys/oracle 这种连接方式只能连接本机数据库,同样不需要listener进程

3.sqlplus sys/oracle@orcl 这种方式需要listener进程处于可用状态。最普遍的通过网络连接。

以上连接方式使用sys用户或者其他通过密码文件验证的用户都不需要数据库处于可用状态,操作系统认证也不需要数据库可用,普通用户因为是数据库认证,所以数据库必需处于open状态。

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

1。lsnrctl status查看服务器端listener进程的状态

[root@test1 ~]# su - oracle

[oracle@test1 ~]$ 。 prof_testdb

[oracle@test1 ~]:testdb〉 lsnrctl

LSNRCTL for Linux: Version 11.2.0。4。0 — Production on 30—OCT—2014 10:49:38

Copyright (c) 1991, 2013, Oracle。 All rights reserved.

Welcome to LSNRCTL, type "help" for information。

LSNRCTL> help

The following operations are available

An asterisk (*) denotes a modifier or extended command:

start stop status

services version reload

save_config trace spawn

change_password quit exit

set* show*

LSNRCTL> version

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192。168.9。142)(PORT=1521)))

TNSLSNR for Linux: Version 11。2。0。4.0 - Production

TNS for Linux: Version 11。2.0.4。0 - Production

Unix Domain Socket IPC NT Protocol Adaptor for Linux: Version 11.2.0.4。0 — Production

Oracle Bequeath NT Protocol Adapter for Linux: Version 11。2。0.4。0 - Production

TCP/IP NT Protocol Adapter for Linux: Version 11。2。0。4。0 - Production,,

The command completed successfully

LSNRCTL> status

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192。168.9。142)(PORT=1521)))

STATUS of the LISTENER

—--———---——-——-———-—————

Alias LISTENER

Version TNSLSNR for Linux: Version 11.2。0。4.0 - Production

Start Date 29-OCT—2014 17:24:43

Uptime 0 days 17 hr. 25 min。 19 sec

Trace Level off

Security ON: Local OS Authentication

SNMP OFF

Listener Parameter File /app/oracle/ora11g/network/admin/listener。ora

Listener Log File /app/oracle/diag/tnslsnr/test1/listener/alert/log。xml

Listening Endpoints Summary。。。

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192。168。9。142)(PORT=1521)))

Services Summary。。。

Service "testdb" has 1 instance(s)。

Instance ”testdb”, status READY, has 1 handler(s) for this service.。。

Service ”testdbXDB" has 1 instance(s).

Instance ”testdb", status READY, has 1 handler(s) for this service。。。

The command completed successfully

LSNRCTL>

2。tnsping 查看客户端sqlnet。ora和tnsname。ora文件的配置正确与否,及对应的服务器的listener进程的状态. [oracle@test1 ~]:testdb〉 tnsping o01fdr

TNS Ping Utility for Linux: Version 11。2.0.4.0 - Production on 30-OCT-2014 10:51:13

Copyright (c) 1997, 2013, Oracle. All rights reserved.

Used parameter files:

Used TNSNAMES adapter to resolve the alias

Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192。168.9.143)(PORT = 1521))(CONNECT_DATA = (SERVER = DEDICATED)(SERVICE_NAME = o01fdr)))

OK (10 msec)

sqlplus机制及相关文件

SqlPlus运行机制及相关文件 关联文件有:sqlnet.ora、tnsname.ora、listener.ora,这3个文件的位置都在$ORACLE_HOME\network\admin 当运行sqlplus user/password@orcl时 sqlplus程序会去sqlnet.ora文件中查找一个NAMES.DEFALUT_DOMAIN的参数,如果有参数,则将参数对应的值(https://www.wendangku.net/doc/1319319914.html,)添加到网络服务名后,即orcl后得到 一个网络服务名https://www.wendangku.net/doc/1319319914.html,,一般不需要这个参数,直接注释掉#就可以, 以免在查找网络服务名中造成麻烦。 然后去tnsname.ora文件中查找对应https://www.wendangku.net/doc/1319319914.html,的网络服务名对应的配置,如果tnsnames.ora是orcl,则不能匹配到,提示错误,如果匹配到,则根据网络服 务名找到相应的主机、协议、端口和service_name等信息 如果listener进程没有问题,则建立与listener进程的连接,再通过listener进程建立与数据库进程的连接。 几种连接用到的命令形式 1.sqlplus / as sysdba 这是典型的操作系统认证,不需要listener进程 2.sqlplus sys/oracle 这种连接方式只能连接本机数据库,不需要listener进程 3.sqlplus sys/oracle@orcl 这种方式需要listener进程处于可用状态。最普遍的通过网络连接。 以上连接方式使用sys用户或者其他通过密码文件验证的用户都不需要数据库处于可用状态,操作系统认证也不需要数据库可用,普通用户因为是数据库认证,所以数据库必需处于open状态。 1.sqlnet.ora详解 此文件决定如何找到连接中出现的连接字符串,服务器端和客户端都要用的网络概要文件,规定了命名方式,认证方法等,通过Net Manager中的本地-概要文 件配置的就是这个文件 若以sqlplus sys/oracle@orcl登录,且sqlnet.ora的内容如下 SQLNET.AUTHENTICA TION_SERVICES= (NTS) NAMES.DIRECTORY_PATH= (TNSNAMES,HOSTNAME) 则客户端首先去tnsname中查找orcl记录,如果没有找到,则试图将orcl作为一个主机名,通过网络解析的方式得到主机对应的ip地址,然后连接上ip地址对应的GLOBAL_DBNAME=orcl这个实例,参数NAMES.DIRECTORY_PATH用来划分查找连接字符orcl的范围,一般的值只有TNSNAMES,则只在tnsnames.ora文件中查找。 DBA对这个文件一定不会陌生,大家了解最多的也一定是sqlnet.ora用来决定oracle怎么解析一个连接中出现的字符串,例如: sqlplus sys/oracle@orcl 那么这个orcl怎么解析?如果你的sqlnet.ora这样配置的: SQLNET.AUTHENTICATION_SERVICES= (NTS) NAMES.DIRECTORY_PATH= (TNSNAMES,HOSTNAME) 那么,客户端就会首先在tnsnames.ora文件中找orcl的记录.如果没有相应的记录则尝试把orcl当作一个主机名,通过网络的途径去解析它的ip地址然后去连接这个ip

ORACLE数据库 ORA-12505报错处理方法

最近重新安装数据库后一直报一个错误,ORA-12505, TNS:listener does not currently know of SID given in connect descriptor 现在终于解决了,现在把经验记录如下: 首先查看tnsnames.ora和listener.ora文件是否有问题。路径如下: (路径:D:\app\MYE\product\11.2.0\dbhome_1\NETWORK\ADMIN)每个人的路径可能不一样,具体看你安装ORACLE的路径。 把这两个文件中的内容修改成如下内容: 注:下面红色字体标注的要改成自己数据库的名字或者路径 tnsnames.ora中: # tnsnames.ora Network Configuration File: D:\app\MYE\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora # Generated by Oracle configuration tools. ORACLR_CONNECTION_DATA = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(Key = EXTPROC1521)) ) (CONNECT_DATA = (SID = CLRExtProc) (PRESENTATION = RO) ) ) SYS = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521)) ) (CONNECT_DATA = (SID = sys) (SERVER = DEDICATED) ) ) LISTENER_SYS = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) listener.ora中内容如下: # listener.ora Network Configuration File: D:\app\MYE\product\11.2.0\dbhome_1\NETWORK\ADMIN\listener.ora # Generated by Oracle configuration tools. SID_LIST_LISTENER =

oracle数据库课程习题

ORACLE数据库课程习题 1 通过SQL*PLUS等数据库访问工具登录数据库服务器时, 所需的数据库连接串是在以下哪个文件中定义的( )A (A) tnsnames.ora (B) sqlnet.ora (C) listener.ora (D) init.ora (E) 以上所述都不正确 2 以下关于数据库连接串的叙述正确的是( )E (A) 数据库连接串必须与数据库名一致 (B) 数据库连接串必须与全局数据库名一致 (C) 数据库连接串必须与数据库的实例名(INSTANCE)一致 (D) 数据库连接串必须与数据库的SID一致 (E) 以上所述都不正确 3 关于SQL*PLUS的叙述正确的是( )A (A) SQL*PLUS是ORACLE数据库的专用访问工具 (B) SQL*PLUS是标准的SQL访问工具,可以访问各类关系型数据库 (C) SQL*PLUS是所有ORACLE应用程序的底层API (D) SQL*PLUS是访问ORACLE数据库的唯一对外接口 (E) 以上所述都不正确 4 SQL*PLUS在ORACLE数据库系统中的作用,以下叙述正确的是( )C (A) 是ORACLE数据库服务器的主要组成部分,是服务器运行的基础构件. (B) 是ORACLE数据库系统底层网络通信协议,为所有的ORACLE应用程序提供一个公共的通信平台 (C) 是ORACLE客户端访问服务器的一个工具,通过它可以向服务器发送SQL命令 (D) 是ORACLE客户端到客户端的点对点的通信工具,用来传递各个客户端的数据 (E) 以上所述都不正确 5 命令sqlplus /nolog的作用是( )C (A) 仅创建一个ORACLE实例,但并不打开数据库. (B) 仅创建一个ORACLE实例,但并不登录数据库. (C) 启动sqlplus,但并不登录数据库 (D) 以nolog用户身份启动sqlplus (E) 以上所述都不正确

oracle listener 路径

oracle listener 路径 Oracle Listener 路径 Oracle数据库是一种关系型数据库管理系统,广泛应用于企业级应用程序。Oracle数据库由多个组件组成,其中一个重要的组件就是Oracle Listener(监听器)。Oracle Listener是一个网络服务,用于接收客户端应用程序的连接请求,并将这些请求转发给数据库实例进行处理。在Oracle数据库中,Listener的路径是指Listener 的配置文件所在的路径。 Listener的配置文件名为listener.ora,它通常位于$ORACLE_HOME/network/admin目录下。$ORACLE_HOME是Oracle数据库软件的安装目录,该目录包含了Oracle数据库的所有安装文件和相关配置文件。在listener.ora文件中,可以定义Listener的监听地址、监听端口、监听协议等信息。 在listener.ora文件中,可以配置多个监听地址。每个监听地址由以下几部分组成: 1. 协议:Oracle Listener支持多种协议,如TCP/IP、IPC(Inter-Process Communication)、SDP(Socket Direct Protocol)等,可以根据需要选择合适的协议。协议的配置方式为:(PROTOCOL=协议名称)。

2. IP地址:监听器所在主机的IP地址,可以是IPv4地址或IPv6地址。IP地址的配置方式为:(HOST=IP地址)。 3. 端口:监听器监听的端口号,客户端应用程序通过该端口与监听器进行通信。端口的配置方式为:(PORT=端口号)。 4. 服务名称:监听器将请求转发给的数据库实例的服务名称。服务名称的配置方式为:(SERVICE_NAME=服务名称)。 下面是一个示例的listener.ora文件内容: ``` LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.1)(PORT = 1521)) (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521)) ) ) SID_LIST_LISTENER = (SID_LIST = (SID_DESC =

不用安装oracle客户端也可以用plsql连接远程oracle

PL/SQL Developer 远程连接Oracle数据库 1、配置服务器tnsnames.ora文件,如果本机上没有安装oracle,可以从安装 了oracle的机上拷贝一个(tnsnames.ora文件)放在指定目录下,因为我已安装oracle,所以直接配置该文件。 # tnsnames.ora Network Configuration File: D:\Oracle11g\product\11.2.0\dbhome_1\network\admin\tnsnames.ora # Generated by Oracle configuration tools. LISTENER_ORCL = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) ORACLR_CONNECTION_DATA = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521)) ) (CONNECT_DATA = (SID = CLRExtProc) (PRESENTATION = RO) ) ) ORCL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.25.224)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl) ) ) orcl为远程Oracle数据库的实例名,IP地址和端口也要配置正确。 2、配置完成后,Oracle客户端应该可以连接到远程Oracle 数据库上。

Listener.ora、sqlnet.ora、tnsnames.ora三个配置文件区别

Listener.ora、sqlnet.ora、tnsnames.ora三个配置文件区别 分类:Oracle 2014-10-30 10:57:36 Listener.ora、sqlnet.ora、tnsnames.ora三个配置文件区别 listener.ora、sqlnet.ora、tnsnames.ora ,都是放在$ORACLE_HOME\network\admin目录 [oracle@testdb1 ~]$ cd /app/oracle/ora11g/network/admin [oracle@testdb1 admin]$ ll total 16 -rw-r--r--. 1 oracle oinstall 162 Oct 22 14:35 listener.ora drwxr-xr-x. 2 oracle oinstall 4096 Jul 10 07:10 samples -rw-r--r--. 1 oracle oinstall 381 Dec 17 2012 shrept.lst -rw-r--r--. 1 oracle oinstall 367 Oct 22 14:33 tnsnames.ora [oracle@testdb1 admin]$ 三个文件的作用和使用 ########################################## sqlnet.ora-----作用类似于linux或者其他unix的nsswitch.conf文件,通过这个文件来决定怎么样找一个连接中出现的连接字符串, 例如我们客户端输入 sqlplus sys/oracle@orcl 假如我的sqlnet.ora是下面这个样子 SQLNET.AUTHENTICATION_SERVICES= (NTS) NAMES.DIRECTORY_PATH= (TNSNAMES,HOSTNAME) 那么,客户端就会首先在tnsnames.ora文件中找orcl的记录.如果没有相应的记录则尝试把orcl当作一个主机名,通过网络的途径去 解析它的ip地址然后去连接这个ip上GLOBAL_DBNAME=orcl这个实例,当然我这里orcl并不是一个主机名 如果我是这个样子

Oracle数据库中主要配置文件

Oracle数据库中主要配置文件 Oracle 主要配置文件: 数据库实例初始化文件initSID.ora,监听配置文件listener.ora,sqlnet.ora 文件,tnsnames.ora 文件 1.2 Oracle 主要配置文件介绍 1.2.3 数据库实例初始化文件initSID.ora 每个数据库实例都有一个初始化参数文件其缺省存放的路径为 $ORACLE_BASE/admin//pfile 其名称为init.ora 如cams 实 例对应的参数文件为initcams.ora 缺省存放路径为 $ORACLE_BASE/admin/cams/pfile 即/u01/app/oracle/admin/cams/pfile 但在CAMS 应用中initcams.ora 的存放路径为 /u02/app/oracle/admin/cams/pfile 这是基于数据与应用程序分开存放更好地 保护数据考虑的尤其在CAMS 双机应用模式下能够保证数据的一致性 具体的修改操作可参考Linux与Oracle 安装手册 初始化参数文件是一个包含实例配置参数的文本文件这些参数被设置为特 定的值用于初始化Oracle 实例的多数内存和进程设置以下是一些主要参 数的说明 1 实例的数据库名称 2 实例名称

3 数据库控制文件的名称和位置 4 调度作业队列的SNP 进程的数量以及SNP 进程觉醒时间间隔秒 5 存储追踪和告警文件的路径 user_dump_dest 指定记录Oracle 用户进程产生的追踪和告警信息的文件的 存放路径background_dump_dest 指定记录Oracle 后台进程产生的追踪和 告警信息的文件的存放路径core_dump_dest指定Oracle运行所产生的coredump 信息的文件的存放路径. 6 UTL_FILE_DIR 参数 UTL_FILE_DIR 参数指定一个或多个目录用于Oracle 应用的文件I/O 如备 份数据到文件在CAMS 系统中将该值设置为* 表示可供Oracle 应 用进行文件I/O操作的目录为任意目录因此只要空间允许可以将备份数 据存放到任意目录下 1.2.4 监听配置文件

Soci库linux下的编译方法

Soci库的linux编译方法 1、下载soci库源码 2、在目标机器上配置数据库环境 以oracle为例:(其他数据库只需要简单安装客户端即可) A)下载oracle客户端安装包 oracle-instantclient-basic-12.1.0.5-1.i386.rpm oracle-instantclient-devel-12.1.0.5-1.i386.rpm oracle-instantclient-sqlplus-12.1.0.5-1.i386.rpm B)按如上的顺序安装三包 # rmp -ivh 带安装包名 C)配置环境变量 # vi /etc/profile 编辑如下 export ORACLE_HOME=/usr/lib/oracle/12.1/client export LD_LIBRARY_PATH=:$ORACLE_HOME/lib:/usr/local/lib:$LD_LIBRARY_PATH :. export SQLPATH=/usr/lib/oracle/12.1/client/network/admin export TNS_ADMIN=/usr/lib/oracle/12.1/client/network/admin export PATH=$PATH:${ORACLE_HOME}bin:. export ORACLE_SID=PLAT D)配置监听文件 #cd /usr/lib/oracle/12.1/client/network/admin 拷贝如下三文件到上面目录 listener.ora sqlnet.ora tnsnames.ora 编辑文件内容如下:

ORACLE试题

ORACLE 选择 B52X0001 ORACLE7数据库中,命令lsnrctl start 用到的参数文件是: ( ) A、tnsnames.ora B、sqlnet.ora C、listener.ora D、以上都不对 正确答案:C B52X0002 在将格式化的文本文件导入ORACLE时我们经常采用的是SQLLOAD命 令,请选择正确的写法( ) A、sqlldr username/password control = data_file B、sqlldr username/password rows = 128 control = data_file C、sqlldr username/password control = data_file rows = 64 D、sqlldr username/password control = data_file.ctl 正确答案:D B52X0003 在Oracle维护过程中,第一步应查看数据库管理系统的运行日志, 其日值文件名为:( ) A、error_'SID'.log B、Alert_'SID'.log C、trace_'SID'.log E、logtail_'SID'.log 正确答案:B B52X0004 SGA(System Global Area)是ORACLE系统为实例分配的一组共享缓 冲存储区,SGA分为几个部分。 ( ) A、4 B、5 C、6 D、7 正确答案:A 库缓冲区、数据字典缓冲区、数据块高速缓冲区、重做日志缓冲区 B52X0005 Oracle逻辑结构可分解为:表空间、数据库块、物理块、分类段、范 围。它们之间的大小关系正确的是( ) A、表空间≥范围≥分类段≥数据库块≥物理块 B、表空间≥范围≥分类段≥物理块≥数据库块 C、表空间≥数据库块≥物理块≥分类段≥范围 D、表空间≥分类段≥范围≥数据库块≥物理块 正确答案:D B52X0006 ORACLE中模式为模式对象的集合,为一个数据库用户所占有,模式 名为与该用户名同名,下列属于模式对象的有( ) A、表 B、视图 C、快照 D、用户环境文件

tnsping用法

1、测试数据库服务的命令: 命令格式: tnsping IP地址:端口号/数据库服务名[count] tnsping 网络服务名[count] 比如:tnsping localhost:1521/study tnsping studydb tnsping命令:如果能够ping通,则说明客户端能解析listener的机器名,而且listener也已经启动,但是并不能说明数据库已经打开,而且tsnping的过程与真正客户端连接的过程也不一致。但是如果不能用tnsping通,则肯定连接不到数据库。 2、查看服务配置的tnsnames.ora文件路径 ORACLE_HOME\NETWORK\ADMIN\tnsnames.ora 文件内容形如: STUDYDB = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))

) (CONNECT_DATA = (SERVICE_NAME = study) ) ) Oracle Net 工具(命令)tnsping,是一个OSI会话层的工具,它用来: 1)验证名字解析(name resolution,当然是oracle自己的网络服务名) 2)远程的listener是否启动 在验证上面两项功能方面,它是DBA手头上一个比较得心应手的工具。Oracle 网络接口支持不同的网络与传输协议,其中我们最熟悉的就是TCP/IP。这篇文章只描述TCP/IP 协议族,然而,在oracle网络接口支持的其它协议下,tnsping的功能是一样的。 Tnsping 可以用在多个网络协议上,但是本文只讨论TCP/IP网络协议 ----------------------------------------------------------------------------- ORACLE TNSPING ----------------------------------------------------------------------------- Oracle的tnsping测试程序,在通讯时使用TCP协议。TCP 是面向连接的OSI传输层协议。面向连接的协议在初始建立连接的阶段需要进行初始的序列号的交换,这就是我们通常所指的三次握手。即tnsping测试程序在与listener进行通讯时会产生三次握手现象。 当在命令行中发出了tnsping命令后,会执行oracle 网络别名(即网络服务名,主机连接字符串)的解析工作。这个解析工作会在本地的tnsnames.ora文件或ORACLE的命令服务器或ORACLE LDAP(目录服务)中进行。解析的目的是得到目标listener所在的机器名(IP地址)和listener侦听的端口号。 一旦得到listener的机器名与端口号,就可以打开一个到目标机器与端口的TCP连接。为了打开这个TCP连接,listener的机器名必须被解析为ip地址(当然这只有在解析出的listener的连接地址为机器名时才这样做),然后TCP/IP执行三次握手来完成这次连接。 在连接建立之后,Tnsping工具然后就发送一个Oracle TNS 连接包给Oracle Listener,Listener然后就回应一个TNS 拒绝包(Refuse packet),在两个机器间的TCP/IP连接就结束了。从oracle 网络别名的解析到结束TCP/IP连接之间的总的耗费的时间就显示在tnsping命令的输出中。 一个例子: C:\>tnsping V817 4 TNS Ping Utility for 32-bit Windows: Version 8.1.7.0.0 - Production on 18-MAY-2001 14:27:57 (c) Copyright 1997 Oracle Corporation. All rights reserved. Attempting to contact ADDRESS=(PROTOCOL=TCP)(HOST=https://www.wendangku.net/doc/1319319914.html,)(PORT=1521)) OK (1770 msec)

oracle超时断连参数

oracle超时断连参数 (最新版) 目录 1.Oracle 连接超时的原因 2.Oracle 连接超时解决方案 3.Oracle 连接超时参数设置 正文 一、Oracle 连接超时的原因 Oracle 连接超时可能是由以下原因导致的: 1.IP 地址发生改变:当客户端与服务器之间的 IP 地址发生改变时,可能会导致连接超时。此时需要更改正确的 IP 地址。 2.驱动文件未安装:在连接 Oracle 数据库时,需要安装对应的驱动文件。如果未安装驱动文件,可能会导致连接超时。需要下载对应数据库的驱动 jar 包,并将其放在 kettle 下的 lib 目录下。 3.表或数据库前缀加斜杠:在连接 Oracle 数据库时,需要在表或数据库前加一个斜杠。例如,如果表名为"test_table",则需要使用 "test_table/"进行连接。 4.防火墙问题:防火墙可能会阻止 Oracle 连接,导致连接超时。需要关闭防火墙,或在防火墙中添加 Oracle 端口 1521 例外。 5.tnsnames.ora 和 listener.ora 配置问题:客户端的 tnsnames.ora 和 listener.ora 文件需要正确配置,否则可能会导致连接超时。可以参考同事机器上的配置信息进行修改。 二、Oracle 连接超时解决方案 1.确认 IP 地址是否正确:检查客户端与服务器之间的 IP 地址是否

正确,如果发生改变,需要更改为正确的 IP 地址。 2.安装驱动文件:如果未安装驱动文件,需要下载对应数据库的驱动jar 包,并将其放在 kettle 下的 lib 目录下。 3.加斜杠:在连接 Oracle 数据库时,需要在表或数据库前加一个斜杠。 4.关闭防火墙或添加例外:如果防火墙阻止了 Oracle 连接,需要关闭防火墙,或在防火墙中添加 Oracle 端口 1521 例外。 5.修改 tnsnames.ora 和 listener.ora 配置:客户端的tnsnames.ora 和 listener.ora 文件需要正确配置,可以参考同事机器上的配置信息进行修改。 三、Oracle 连接超时参数设置 1.设置 expiretime 参数:该参数用于死连接检测。设定该参数为非零值,可以定期给空闲连接发送探测包检查客户端是否已异常断开。一旦发现异常连接,最多会重传操作系统参数 tcpretries2 指定次数。如果超过最大重试次数仍重传失败,将返回错误并通知 Oracle。 2.设置 idletime 参数:该参数用于控制进程空闲时间。当进程空闲时间超过指定值时,连接可能会被断开。需要调整 idletime 参数值,以避免连接超时断开。 3.查询 resource 和 limit 参数:在 Oracle 数据库中,可以通过查询 resource 和 limit 参数来检查是否有连接超时设置。

tnsnames.ora 写法

tnsnames.ora 是Oracle数据库中的一个配置文件,它用于定义数据库服务的位置区域和名称,客户端连接数据库时会使用 tnsnames.ora 文件中定义的信息来定位数据库服务。正确的编写和维护tnsnames.ora 文件对于数据库连接的正常运行至关重要,因此需要遵循一定的规范和写法。 1. 文件位置和命名 tnsnames.ora 文件通常位于 $ORACLE_HOME/network/admin 目录下,其中 $ORACLE_HOME 为Oracle软件的安装目录。文件名必须严格为 tnsnames.ora,大小写敏感。 2. 文件格式 tnsnames.ora 文件采用文本格式进行编辑,可以使用任何文本编辑器进行修改。每个数据库服务的定义应该按照以下格式进行编写: ``` <服务名> = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = <主机名>)(PORT = <端口号>)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = <服务名>)

) ) ``` 在上述示例中,<服务名> 为该数据库服务的名称,<主机名> 为数据库服务器的主机位置区域,<端口号> 为数据库监听的端口号,<服务名> 为数据库的服务名或者SID。 3. 服务名 在 tnsnames.ora 文件中定义的服务名应该具有一定的可识别性和描 述性,以方便数据库管理员和开发人员识别和使用。通常建议使用数 据库实例的名称或者与业务相关的名称作为服务名。 4. 主机名和端口号 在定义数据库服务时,必须准确填写数据库服务器的主机名和监听端 口号。这些信息由数据库管理员在部署数据库时进行配置,需要与实 际的数据库服务器配置保持一致。 5. 服务名与实例名 在 tnsnames.ora 文件中,需要明确区分服务名和数据库实例名。服 务名是客户端连接数据库时使用的名称,而数据库实例名是数据库服 务器上实际运行的数据库实例的名称,它们并不总是一一对应的关系。对于RAC集群环境或者使用服务名称连接的情况,服务名与实例名可

无法启动oracle监听处理

【LISTENER】主机名修改为IP地址后LISTENER无法监听到实例 ----为什么listener.ora文件里面HOST后面到底应该输入IP地址还是主机名。我的经验告诉我,这边最好使用主机名。很多的时候,一个机器绑定的不只一个IP地址,如HOST后面是IP地址,那么ORACLE的listener只会监听指定的IP地址的访问请求,本机其它IP地址的连接都会拒绝的。另外,创建监听的时候,listener.ora文件默认创建的就是主机名。那么,如果没有特别的需要,就不要再去画蛇添足的修改host_name为IP地址了。 将listener.ora和tnsnames.ora文件中的HOST信息从原来的主机名字修改为IP地址后,监听可以启动,但是无论如何也监听不到数据库实例的信息(即使反复重启数据库)。 修改后重新启动监听,但是监听一直保持在如下的状态 LSNRCTL> status Connecting to(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=144.194.192.183)(PORT =1521))) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Linux: Version 10.2.0.1.0 - Production Start Date 21-JUL-2009 14:34:20 Uptime 0 days 0 hr. 0 min. 36 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Parameter File /oracle/app/oracle/product/10.2.0/db_1/network/admin/listen er.ora Listener Log File /oracle/app/oracle/product/10.2.0/db_1/network/log/li stener.log Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=144.194.192.183)(PORT= 1521))) (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC0))) Services Summary... Service "PLSExtProc" has 1 instance(s). Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service... The command completed successfully

顺利建立oracle数据库连接之路径

在oracle中建立数据库连接问题之全解 在win764位的系统作为数据库服务器,安装oracle 11gR2版,在win10 64位安装oracle-oraclien12home1,经过一下午的捣腾,度娘了网上的各种精华,总算汇聚了基本上解决了oracle建立数据库连接问题之全解,给初学者借鉴。 1.三个必备的文件:tnsnames.ora、sqlnet.ora、listener.ora; 2、文件中的HOST要保持高度一致:listener.ora文件中:(ADDRESS = (PROTOCOL = TCP)(HOST =192.168.3.123)(PORT = 1521)) tnsnames.ora文件:(ADDRESS = (PROTOCOL = TCP)(HOST =192.168.3.123)(PORT = 1521)) 3、在listener.ora文件中添加如下服务名配置:

(SID_DESC = (GLOBAL_DBNAME = orcl) (ORACLE_HOME = E:\app\Administrator\product\11.2.0\dbhome_1) (SID_NAME = orcl) ) 特别注意服务名的大小写。 4、每次修改配置文件后,请重启OracleOraDb11g_home1TNSListener、OracleServiceORCL:同时:这两个文件也是测试连接数据库成功的先决条件。 5、出现ORA-12514 监听程序无法识别连接描述符中请求的服务 仔细检查在listener.ora文件中添加的那段配置,包括目录及服务名; 6、出现ORA-27101 Shared memory realm does not exist ORA-01034 ORACLE not available 错误的解决: 以超级管理员运行cmd.exe,在DOS状态中输入:sqlplus /nolog 按回车键; 再输入:conn /as sysdba 按回车键; 如出现ORA-00119,ORA-00132错误,则: 1)检查当前用户是否在Windows的ora_dba用户组中,如果没有则从Windows用户组中去添加。(添加方法及步骤不在赘述) 2)如果当前用户在ora_dba用户组中,就按提示去更改数据库服务名安装目录下的连接参数文件init.ora ********

达梦连接oracle配置说明

达梦连接oracle配置说明 武汉达梦数据库 2017年6月

目录 达梦连接oracle 配置说明.................................................... i.. 第1章需求描述.............................................................. 2. 第2章配置说明.............................................................. 3. 2.1配置准备............................................................. 3. 2.2配置说明............................................................. 3. 2.2.1部署oracle客户端 (3) 2.2.2拷贝动态库文件................................................ 5. 2.3 创建DBLINK .......................................................................... 6. 2.3.1 仓U建DBLINK ................................................................. 6. 2.3.2实现数据同步................................................... 6. 第3章附件.................................................................. 8..

Oracle 12c连接PDB时listener和tnsnames.ora配置

Oracle 12c连接PDB时,listener和tnsnames.ora配置1、配置监听 首先要明确,所有的PDB都使用1个监听,配置多个实际上启动时也只有第1个有意义。 LISTENER = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = ora12c_A)(PORT = 1521)) ) 接下来使用SID_LIST_LISTENER来进行静态注册服务。 SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (GLOBAL_DBNAME = ora12c) #该服务是我配置的cdb信息 (SID_NAME = ora12c) ) (SID_DESC =

(GLOBAL_DBNAME = pdborcl)#该服务是我配置的pdb信息 (SID_NAME = ora12c) ) ) ADR_BASE_LISTENER = /opt/oracle 2、tnsnames.ora配置 观察发现,在tnsnames中配置pdb跟CDB,即原来11g的配置完全一样。这里SERVICE_NAME = pdborcl使用得是PDB的名字,可以在v$pdbs中查看。 ORA12C = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = ora12c_A)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = ora12c) )

) pdborcl = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = ora12c_A)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = pdborcl) ) ) 3、为了保险,检查下sqlnet.ora NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT) 这一句是为了保证优先使用TNSNAMES解析。 配置完,在PDB启动的情况下(怎么启动这里不多讲了),就可以直接连接到PDB了。(Oracle12c是没有scott用户的,我自己在PDB下面新建的)。

plsql oracle protocol adapter error

plsql oracle protocol adapter error 1. 引言 1.1 概述 本文将讨论PL/SQL Oracle Protocol Adapter错误以及解决方法。在进行Oracle数据库连接时,可能会遇到Protocol Adapter错误,它表示无法建立与数据库的有效网络连接。这个错误是非常常见的,并且可能由多种原因引起,包括网络连接问题、配置文件设置错误以及监听器或服务状态异常等。 1.2 文章结构 本文将按照以下结构进行阐述:首先将对PL/SQL进行概述,介绍其基本概念和特点;接着我们将进一步介绍Oracle Protocol Adapter Error,包括其简介以及为什么会发生该错误的原因分析;然后我们将提供两种解决方案来应对该错误,第一种方案是检查网络连接和配置相关的问题并给出解决方法,第二种方案是检查监听器和服务状态并提供相应的步骤;最后总结文章主要观点,并给出一些建议和未来可能遇到的其他问题的畅想。 1.3 目的 本文的目标是帮助读者了解PL/SQL Oracle Protocol Adapter Error错误以及如何解决该问题。通过详细讲解错误原因分析和两种解决方案,我们希望读者能

够掌握排除此类错误所需的技巧,并能够迅速恢复数据库连接和正常工作。同时,我们也希望读者能够对可能出现的其他问题有所预见,并在未来遇到类似情况时能够应对自如。 2. PL/SQL Oracle Protocol Adapter Error 2.1 PL/SQL概述 PL/SQL(Procedural Language/Structured Query Language)是Oracle数据库中的编程语言,它结合了procedural programming language 和SQL (Structured Query Language)。PL/SQL允许开发人员在数据库中创建存储过程、函数、触发器等对象,以提高应用程序的性能和可维护性。 2.2 Oracle Protocol Adapter Error简介 在使用PL/SQL进行数据库连接时,有时可能会遇到"Protocol Adapter Error"的错误。这种错误表示连接到数据库的协议适配器出现了问题,导致无法建立有效的连接。常见的错误信息可能包括"ORA-12541: TNS: no listener" 或"ORA-12170: TNS:Connect timeout occurred"。 2.3 错误原因分析与解决方法 出现Oracle Protocol Adapter Error错误的原因多种多样,下面将对其中几种常见原因进行分析,并提供相应的解决方法。

Oracle数据库监听器(LISTENER)和本地服务名(Tnsname)配置

Oracle数据库监听器(LISTENER)和本地服务名(Tnsname)配置 分类:Oracle 基础知识2009-11-24 10:12 8315人阅读评论(7) 收藏举报 一、监听器(LISTENER) 监听器是Oracle基于服务器端的一种网络服务,主要用于监听客户端向数据库服务器端提出的连接请求。既然是基于服务器端的服务,那么它也只存在于数据库服务器端,进行监听器的设置也是在数据库服务器端完成的。 二、本地服务名(Tnsname) Oracle客户端与服务器端的连接是通过客户端发出连接请求,由服务器端监听器对客户端连接请求进行合法检查,如果连接请求有效,则进行连接,否则拒绝该连接。 本地服务名是Oracle客户端网络配置的一种,另外还有Oracle名字服务器(Oracle Names Server)等。Oracle常用的客户端配置就是采用的本地服务名,本文中介绍的也主要是基于本地服务名的配置。 三、Oracle网络连接配置方法 配置Oracle服务器端与客户端都可以在其自带的图形化Oracle网络管理器(Oracle Net Manager)里完成(强烈建议在这个图形化的工具下完成Oracle 服务端或客户端的配置)。在Windows下,点击“开始/程序/Oracle - OraHome92/Configuration and Migration Tools/Net Manager”启动Oracle网络管理器工具,在Linux/Unix下,利用netmgr命令来启动图形化Oracle网络管理器,如: $ netmgr Windows下启动Net Manager图形窗口如下图示:

相关文档
相关文档 最新文档