文章目录
1.1 监听器、网络服务名
oracle产品安装完成后,服务器和客户端都需要进行网络配置才能进行网络连接。服务器端配置监听器,客户端配置网络服务名

如果通过网络访问数据库服务器,至少需要启动

如果通过本地访问数据库服务器,至少要启动

如 未启动监听

sqlplus scott/123456@orcl


服务器端监听器配置信息包括监听协议、地址以及其他相关信息。配置信息保存在名为listener.ora的文件中。在安装服务器软件时,自动配置了一个监听器


客户端的网络服务名配置信息包括服务器地址、监听端口号和数据库SID等,与服务器监听器建立连接。配置信息保存在名为tnsnames.ora的文件中

oracle中net configuration assistant 和net manager工具都能用来配置监听器和网络服务名
1.2 监听器
1.2.1 服务器端监听控制
lsnrctl status|start|stop



1.2.2 网络配置文件
oracle中进行网络配置的主要三个文件,位于 $ORACLE_HOME\NETWORK\ADMIN下sqlnet.ora, listener.ora,tnsnames.ora

(1) sqlnet.ora

通过查看 sqlnet.ora,发现sqlplus 不输入密码,就可以登录sys用户

若修改sqlnet.ora文件:

则无法登录

NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
表示客户端连接的2种方式:简单连接、本地连接
(2) listener.ora

调用外部过程:c/c++/java完成任务简单,但使用oracle pl/sql来完成就复杂了,oracle对外部过程的监听需要:

指定主机、端口号、协议

(3) tnsname.ora

1.2.3 图形界面配置监听 netca
(1) netca图形化修改sqlnet.ora

如:




(2) netca图形化修改listener.ora
若删除listener.ora




始终点击下一步


(3) netca图形化修改tnsname.ora


服务名就是连接字符串,可以通过它远程访问数据库,可以通过NETCA配置,配置时指明远程数据库的主机名,网络协议用tcp/ip,配置完成(服务名若为test)后可采用username/password@test
测试服务是否连接上
tnsping 服务名



1.3 静态注册、动态注册
注册就是将数据库作为一个服务注册到监听程序,在数据库启动过程中,数据库服务器会向监听程序注册相应的服务。
(1) 动态注册
动态注册的一个特点是不需要listener.ora文件,默认情况下PMON向lsnrctl注册TCP/IP协议,port为1521

如:
取出listener.ora文件


即便没有listener.ora依然启动成功


(2) 静态注册
SID_LIST_LISTENER=
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = 数据库名)
(ORACLE_HOME =路径)
(SID_NAME =SID名 )
)
)
如:
使用net manager工具




使用lsnrctl status 查看某个是静态注册还是动态注册;如果是unknown,表示静态注册;如果是ready,表示动态注册

READY的服务是由PMON进程动态注册到监听器,因此PMON进程所在的数据库一定处于打开的状态,所以说这些服务名所对应的实例已经准备好接收用户的连接请求。
UNKNOWN的服务是通过编辑listener.ora而静态注册的服务名,监听器并不知道服务名对应的实例是否打开了
静态注册、动态注册可根据需要进行转换
本文详细介绍了Oracle数据库的网络配置过程,包括服务器端监听器配置、客户端网络服务名配置及监听器的图形化配置方法。同时对比了静态注册与动态注册的区别,并提供了具体的配置文件示例。
1013

被折叠的 条评论
为什么被折叠?



