:修改/home/oracle/app/product/11.2.0/db_1/network/admin/sqlnet.ora(与listener.ora同一目录)

增加白名单:

tcp.validnode_checking = yes
tcp.invited_nodes = (10.204.250.11,10.204.250.12,10.204.250.13)

重启listener时报错:

https://blog.csdn.net/langkeziju/article/details/12652247

oracle 提供了lsnrctl reload 命令,在下面两种情况

1. 修改listener.ora

2 .修改sqlnet.ora

之后又不想停止监听,可以考虑lsnrctl reload命令!

reload命令会重新读取listener.ora的内容,这个命令让用户不停止监听器的情况下,改变监听器的配置。

但是对于sqlnet.ora的修改考虑以下情况:

1. 如果之前sqlnet.ora没有被当前的监听器使用,这时必须关闭然后重启监听!

2. 如果之前正在使用sqlnet.ora,那么lsnrctl reload 是比较快的方式。当前已经建立的连接不会受到影响,动态监听服务完成的非常快,也几乎不受影响。

官方对于lsnrctl reload的解释:

Use the RELOAD command to reread the listener.ora file. This command enables you to add or change statically configured services without actually stopping the listener.

In addition, the database services, instances, service handlers, and listening endpoints that were dynamically registered with the listener will be unregistered and

subsequently registered again.

意思和上面解释的差不多,在生产环境中对于sqlnet.ora文件的修改,保持必要的谨慎。

之前做实验进行lsnrctl reload 并未达到理想的效果。在生产库上执行的时候是选择了lsnrctl start/stop.

这两步操作的时间是很短的,3-4秒完成关闭和重启操作。

开始认为是listener.ora中的HOST配置有误,原来是别名,改成本机IP地址,测试也不行。

查了许多资料:

最后查到对于TNS-00584错误的解释:

Oracle Error :: TNS-00584
Valid node checking configuration error

Cause
Valid node checking specific Oracle Net configuration is invalid.

Action
Ensure the hosts specified in the "invited_nodes" and "excluded_nodes" are valid. For further details, turn on tracing and reexecute the operation.

http://www.itpub.net/thread-1019492-1-1.html

明确是添加invited_nodes的内容有问题,又看到一篇文章:

https://blog.csdn.net/klzs1/article/details/5964653?utm_source=blogxgwz6

检查了/oracle/11.1.0/network/admin/listener.ora没问题。
打开/oracle/11.1.0/network/admin/sqlnet.ora, 发现
SQLNET.INBOUND_CONNECT_TIMEOUT=6
tcp.validnode_checking=yes
tcp.invited_nodes=(ODB,ODB1,CLUDB)
中,ODB1 这个alias并没有在/etc/hosts中定义, 实际上ODB 和ODB1都是此机器的别名。将invited_nodes中的ODB1去掉,再启动,正常。或者在/etc/hosts 中加入这个定义也是可以的。
---------------------
作者:klzs1
来源:CSDN
原文:https://blog.csdn.net/klzs1/article/details/5964653
版权声明:本文为博主原创文章,转载请附上博文链接!

要求必须在/etc/hosts中配置别名。

修改sqlnet.ora,将ip改成alias别名:

tcp.validnode_checking = yes 
tcp.invited_nodes = (lnnanodomcrbak,lnnanodomcr,lnnanodomcr1,lnnanodwg,lnnanodwg1,localhost)

同时配置/etc/hosts:

[root@lnnanodomcrbak ~]# cd /etc/
[root@lnnanodomcrbak etc]# vi hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
10.204.250.13 lnnanodomcrbak
10.204.250.12 lnnanodomcr
10.204.250.14 lnnanodomcr1
193.169.0.8 lnnanodwgbak
193.169.0.7 lnnanodwg
193.169.0.9 lnnanodwg1
10.204.195.129 edoctor2
10.204.197.129 edoctor1

再启动listener,成功了:

但是,其他ORACLE数据库sqlnet.ora又可以写IP:

在/home/oracle/app/product/11.2.0/db_1/network/admin目录下面的sqlnet.ora文件末尾加上

tcp.validnode_checking = yes 
tcp.invited_nodes = (10.227.232.5,10.227.232.6,10.227.232.7,10.227.232.8,10.227.232.9,10.227.232.10,10.227.232.11,10.227.232.12,10.227.232.13,10.227.232.14,10.227.232.15,10.227.232.16,10.227.232.17,10.227.232.18,10.227.232.19,10.227.232
.20,10.227.232.21,10.227.232.22,10.227.232.23,10.227.232.24,10.227.232.33,10.227.232.34,10.227.232.35,10.227.232.36,10.227.232.37,10.227.232.38,10.227.232.39,10.227.232.40,10.227.232.41,10.227.232.42,10.227.232.43,10.227.232.44,10.227.2
32.45,10.192.192.171,10.190.23.138,10.190.23.158,10.190.23.162,10.190.23.163,10.190.23.166,10.190.23.168,10.190.23.169,10.190.23.170,10.190.145.244,10.190.145.243,10.190.26.206)

这是问什么呢?

有谁懂解答一下。

TNS-12560: TNS: 协议适配器错误同时伴有TNS-00584: 有效节点检查配置错误的解决方法的更多相关文章

  1. PHP错误Warning: Cannot modify header information - headers already sent by解决方法

    这篇文章主要介绍了PHP错误Warning: Cannot modify header information - headers already sent by解决方法,需要的朋友可以参考下 今天在 ...

  2. 错误“Unexpected namespace prefix "xmlns" found for tag LinearLayout”的解决方法(转)

    (转自:http://blog.csdn.net/bombzhang/article/details/12676789) 有一次升级开发工具后发现xml脚本出现错误“Unexpected namesp ...

  3. ubuntu下安装jdk(rpm版)错误: 找不到或无法加载主类 解决方法

    1.官网下载jdk,linux64位,rpm格式的. 2.提取下载的文件,提取到一个目录下,我的是提取到了usr目录下了 3.终端输入:sudo gedit ~/.bashrc 会打开一个文本,在文本 ...

  4. win10连接宽带,拨号提示错误720:不能建立到远程计算机的连接,解决方法

    使用账号密码登录时,一直报720错误.解决方法是卸载以下IP驱动.卸载之后重新连接就正常了.亲测有效

  5. MDK错误 Error: L6218E: Undefined symbol SystemInit (referred from startup_stm32f10x_hd.o). 解决方法

    此错误产生的位置在STM32工程所包含的汇编启动代码文件,如下图 熟悉ARM汇编的朋友一定可以看出,这是一个子程序调用语句,而调用的子程序正是SystemInit.出现错误的原因就是汇编器没有在代码之 ...

  6. 编译boost程序出现如下错误fatal error LNK1104: cannot open file 'libboost_system-vc100-mt-gd-1_54.lib'的解决方法

    对于如下程序: #include <iostream> #include <boost/asio.hpp> #include <boost/date_time/posix ...

  7. [ORACLE错误]ORA-00054:resource busy and acquire with nowait specified解决方法

    当某个数据库用户在数据库中插入.更新.删除一个表的数据,或者增加一个表的主键时或者表的索引时,常常会出现ora-00054:resource busy and acquire with nowait ...

  8. 错误“Unexpected namespace prefix "xmlns" found for tag LinearLayout”的解决方法

    编写布局代码时发现xml脚本出现错误“Unexpected namespace prefix "xmlns" found for tag LinearLayout”,原来是一个na ...

  9. IIS自定义404错误页显示“系统找不到指定的文件”解决方法

    在IIS站点属性里面设置了自定义的404错误页面为一个文件之后,有时一直不生效,总是提示这样一句话:“系统找不到指定的文件”. 其实这种错误也只是在某些网站程序中出现,其实解决办法很简单.这是由于II ...

随机推荐

  1. jq-css、class、属性操作

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  2. Python学习笔记三

    一. 为什么要使用函数? 函数可以方便阅读代码. 函数可以减少重复代码. 函数可以减少管理操作,减少修改操作. 二. 函数分类: 内置函数:len()   sum()   max()   min() ...

  3. main函数中System.exit()的作用

    main()主函数再熟悉不过,了解java的人也都知道System.exit()方法是停止虚拟机运行.那这里为什么还要单独写一篇博客,都是源于朋友发的一张最近刚买的T恤照片,就是上面这张图.这是一个经 ...

  4. Python——文件读取

    我们经常需要从文件中读取数据,因此学会文件的读取很重要,下面来介绍一下文件的读取工作:     1.读取整个文件     pi_digits.text 3.1415926535 8979323846 ...

  5. matplotlib 3D数据-【老鱼学matplotlib】

    直接上代码: import numpy as np import matplotlib.pyplot as plt # 导入显示3D的库 from mpl_toolkits.mplot3d impor ...

  6. Kafka生产者发送消息的三种方式

    Kafka是一种分布式的基于发布/订阅的消息系统,它的高吞吐量.灵活的offset是其它消息系统所没有的. Kafka发送消息主要有三种方式: 1.发送并忘记 2.同步发送 3.异步发送+回调函数 下 ...

  7. c++中字符串的反转

    1.对于用char定义的字符串:使用string.h中的strrev函数 #include <iostream> #include <cstring> using namesp ...

  8. java集成swagger

    概览: java集成Swagger Swagger-UI的使用 Springboot跨域请求的访问解决 Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 W ...

  9. LINUX更改桌面的分辨率

    命令行 输入xrandr 输入xrandr命令后可以看到系统的一些分辨率的列表, 和当前系统屏幕的分辨率信息,可以通过命令的 相应参数对系统分辨率的一些设置操作. xrandr -s 0 全屏 xra ...

  10. 洛谷.3733.[HAOI2017]八纵八横(线性基 线段树分治 bitset)

    LOJ 洛谷 最基本的思路同BZOJ2115 Xor,将图中所有环的异或和插入线性基,求一下线性基中数的异或最大值. 用bitset优化一下,暴力的复杂度是\(O(\frac{qmL^2}{w})\) ...