文章目录
如果要通过oracle网络服务实现对数据库服务器的远程访问,则需要配置oracle net。
oracle net主要配置文件包括:
listener.ora
、
sqlnet.ora
、
tnsnames.ora
;
配置文件存放在
$ORACLE_HOME/network/admin
下:
[oracle@oracle12c admin]$ pwd
/u01/app/oracle/product/12.2.0/dbhome_1/network/admin
[oracle@oracle12c admin]$ ls
samples shrept.lst
[oracle@oracle12c admin]$
由于建库时没有选择创建监听,所以该目录下没有有效的配置文件,使用网络连接时会报错(其实是因为没有打开监听,默认会动态注册):
[oracle@oracle12c admin]$ sqlplus scott/tiger@orcl
SQL*Plus: Release 12.2.0.1.0 Production on Sun Jan 20 16:37:26 2019
Copyright (c) 1982, 2016, Oracle. All rights reserved.
ERROR:
ORA-12154: TNS:could not resolve the connect identifier specified
samples目录下有三个配置文件示例:
[oracle@oracle12c admin]$ ls samples/
listener.ora sqlnet.ora tnsnames.ora
1.listener.ora:
该文件是listener监听器进程的配置文件,监听器进程运行在数据库服务器端,负责监听通过 oracle net访问数据库服务器的连接请求,与已注册的实例信息进行匹配,判断是否建立连接。关闭该进程不影响已存在的数据库连接。
1.1 配置步骤
- 打开oracle的网络管理器
[oracle@oracle12c Desktop]$ netmgr
- 出现如下界面,选择Listeners
- 点击+号,新建监听,输入监听名称
- 配置监听位置
- 点击Add Address添加监听地址
选择相应的协议(TCP/IP)、主机名或IP地址(192.168.10.10)、监听的端口号(默认1521)
-
添加数据库服务
-
配置数据库服务信息,用于监听进程静态注册
全局数据库名(orcl)、oracle家目录(/u01/app/oracle/product/12.2.0/dbhome_1)、数据库实例名(orcl)
-
保存配置
-
此时已经生成了监听器的配置文件
listener.ora
[oracle@oracle12c admin]$ ls
listener.ora samples shrept.lst
- 查看监听器配置文件
[oracle@oracle12c admin]$ cat listener.ora
# listener.ora Network Configuration File: /u01/app/oracle/product/12.2.0/dbhome_1/network/admin/listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = orcl)
(ORACLE_HOME = /u01/app/oracle/product/12.2.0/dbhome_1)
(SID_NAME = orcl)
)
)
LISTENER =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.10)(PORT = 1521))
)
ADR_BASE_LISTENER = /u01/app/oracle
[oracle@oracle12c admin]$
参数LISTENER = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.10)(PORT = 1521)) )
描述了监听进程LISTENER的信息:包括协议,地址,端口号;
参数SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (GLOBAL_DBNAME = orcl) (ORACLE_HOME = /u01/app/oracle/product/12.2.0/dbhome_1) (SID_NAME = orcl) ) )
描述了监听进程LISTENER要注册到的实例列表,实例的描述信息:
全局数据库名(指定了对外的数据库服务名,如果没有指定该参数,则对外服务名为SID_NAME实例名)、oracle家目录、实例名SID_NAME(区分大小写
)。
注意:在配置LISTENER监听器的配置文件时,开始配置的SID_NAME = ORCL
实例名配置的是大写;启动监听之后能够通过oracle net 连接