创建Oracle监听白名单

What is TCP_VALIDNODE_CHECKING and How to Use It (Doc ID 462933.1)
TCP.VALIDNODE_CHECKING and TCP.INVITED_NODES With Oracle’s Data Guard? (Doc ID 1968655.1)

由于业务需要,需要使用白名单限制用户登录数据库的地址,决定使用数据库白名单功能!

一般单实例数据库启动白名单只需要在sqlnet.ora中添加以下内容即可:

   TCP.VALIDNODE_CHECKING=yes  (开启IP限制功能),
   TCP.INVITED_NODES=(192.168.1.103,ip2,ip3,..,..本地IP..)--白名单,必须本地IP,否则监听会起不来,
   TCP.EXCLUDED_NODES=(192.168.1.102) --黑名单

由于本环境为RAC环境,操作稍有不同。
1 ORACLE用户下的$ORACLE_HOME/NETWORK/ADMIN目录下没有sqlnet.ora文件,必须使用grid用户登录进入$ORACLE_HOME/NETWORK/ADMIN下的sqlnet.ora文件,添加修改。

2 添加白名单时必须添加本地IP,因为是RAC环境,必须把连个节的真实IP,私有IP,VIP,SCAN IP全部添加进白名单。

3 启动时不能像单机一样使用lsnrctl reload,需使用srvctl stop listener -n 节点1srvctl start listener -n 节点1,可以一个节点修改好后,再修改另一个节点,防止影响业务。

srvctl start listener -n node1
srvctl stop listener -n node2
srvctl stop listener -n node [-l listenername]

今天发现一个SRVCTL命令的小bug:
如果用srvctl关闭监听后,再用lsnrctl start打开监听。这时srvctl仍然认为监听已经关闭。因此,再次使用srvctl关闭监听,似乎srvctl根本没有去执行。如果希望srvctl可以关闭监听,那么需要先用srvctl启动监听,然后再关闭。搜索了一下metalink,没有发现关于这个问题的说明。而且,这个问题只在关闭监听时出现,启动监听则没有问题。svrctl显然只记录它自己的操作,而不去检查listener真正的状态。

windows下配置白名单sqlnet.ora中一定要写自己的主机名!!!或者去看listener.ora中的host写的是啥

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值