Oracle网络相关概念与常用配置文件
监听器LISTENER
本地服务名TNS
ORACLE 网络连接方式
客户端到服务器建立会话的过程及相关术语
sql > connect username/password@net_service_name
tnsnames.ora是客户端的配置
listener.ora是服务端的配置
服务名(service_name)
show parameter service;
常用控制文件
ldpq.ora LDAP解析
cman.ora Oracle连接管理参数
tennames.ora 本地客户端和远程客户端的解析
listener.ora 本地服务的监听相关信息
sqlnet.ora 服务器和客户端的解析方式
ASM环境下:/u01/app/grid/diag/tnslnsr/shzq/listener/trace
单机环境下:/u01/app/11.2.0/grid/network/admin
设置数据库连接访问别名:
图形化界面下,netmgr:
NET SERVICE NAME是别名
IP地址写服务器地址:
service 写真实的SID名称:
用system测试,是通过的
保存后才能生效:
本地登录别名orac可以登录,且查询实例名时为zhugm
可以通过tnsping实例名的方式进行测试,有回执则表明监听可达
回执数值越小速度越快,可以查看网络连通质量
熟悉监听管理工具
EM
netmgr建立tnsnames.ora
netca建立listener.ora
其他服务器实例名
连接其他数据库服务器
登录测试:
此时的net service name是设置连接的别名:
lsnrctl
lsnrctl start/stop/status listener启、停、查监听服务
lsnrctl进入命令行,set查看所有命令
rawmode查看相信状态
show rawmode查看是否开启
set rawmode on开启服务
status查看状态
当前监听:current_listener
set current_listener listener更改前当前监听
直接输入这些命令,出现set或show则表示可以在前面加上该设置进行配置:
inbound_connect_timeout监听的超时时间
trc_file指定监器跟踪信息的位置
trc_directory设置监听跟踪的目录名称
trc_level跟踪级别
off 关闭默认是关闭
user跟踪标识用户导致的错误条件
admin 将跟踪设置为数据库管理员的跟踪级别,跟踪与表示特定的安装问题
support将跟踪设置为客户支持人员的相应级别,跟踪文件很大(用的较多)
log_file日志文件
监听动静注册-配置第二个网络-专用与共享服务进程
建立注册包含的信息:数据库服务名、实例名、可用的服务处理程序(共享模式、专业模式)、端口号和IP地址
数据库建好后就是默认的动态注册
静态注册:手工将实例的相关信息告知监听器,能够用工具完成的都叫静态注册,静态注册是在动态不稳定的情况下使用,优点是稳定,缺点是注册的过程比动态注册慢
动态注册:向监听器注册一个实例的首选方法,
官方推荐动态注册
如果能够动态注册进去,证明实例和服务器不存在错误
当关闭实例的时候,动态注册的监听也会自动注销
但是静态不关心你的服务是否正常,只要端口通了就行
换句话说,动态注册情况下,只要开启了,服务器和实例肯定是正常的,而静态注册就没有这个功效
数据库没有启动前需要用监听时,就需要手工注册监听(做data grudge时需要使用)
静态注册的格式:
动态注册:
alter system set local_listener=list2
alter system set local_listener=’(ADRESS=(PROTOCOL=TCP)(HOST=192.168.0.12)(PORT=1521)’;
alter system register
要想动态成功,必须保证服务名和实例名正确
查看服务名和实例名的配置情况:
怎么区分是动态注册还是静态注册
静态监听在启动监听后进行查看,lsnrctl status时,如果能看到实例名,而状态是未知的情况下,就是静态注册的
动态监听的状态:
在数据库没有启动的状态下,是无法使用用户名和密码的方式登陆的,除非使用conn / as sysdba进行登陆
动态注册如下图:
数据库启动时能够自动注册需要满足的三个条件:TCPIP协议,HOST和端口信息
远程监听可以解决负载不均衡的问题
增加服务名:
alter system set service_names=db01,itpuxdb
;
alter system register;
添加新服务名的监听
tnsping一下,通就基本没问题了
删除新添加的实例名:
只要写一个服务名就可以了
设置远程监听:
配置第二个监听网络
第二个监听网络产生的原因:因为一块网卡的传输速度是有限的,由于归档日志非常大,利用第二块网络单独进行传输
配置:
在集群情况下配置第二块网卡,查看官方文档ID1063571.1
添加一块网卡,配置IP地址为172.117.80.12/24
tnsnames.ora的配置
listener.ora的配置
alter system set listener_networks=’((NAME=network1)(LOCAL_LISTENER=ZHUGM)(REMOTE_LISTENER=192.168.0.12:1521))’,’((NAME=NETWORK2)(LOCAL_LISTENER=172.117.80.12:1521)(REMOTE_LISTENER=172.117.80.12:1521))’ SCOPE=BOTH;
注意端口号!!
注意端口号!!端口号错了是无法动态注册成功的
写入完成后重新装在lsnrctl lsnrctl reload dg,如果还不能注册,就手动注册