:修改/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. linux文件系统初始化过程(4)---加载initrd(中)

    一.目的 上文详细介绍了CPIO格式的initrd文件,本文从源代码角度分析加载并解析initrd文件的过程. initrd文件和linux内核一般存储在磁盘空间中,在系统启动阶段由bootload负 ...

  2. Fork别人的代码 原作者更新后如何同步

    给主题的fork加一个remote 给 fork 配置一个 remote 使用 git remote -v 查看远程状态 ➜ next git:(master) git remote -v origi ...

  3. LNMP一键包安装后解决MySQL无法远程连接问题

    MySQL/MariaDB无法远程连接,如何开启? 1,没有给root对应的权限 -- @'192.168.1.123'可以替换为@‘%’就可任意ip访问 mysql> GRANT ALL PR ...

  4. nginx+tomcat:动静分离+https

    nginx server { listen 80; server_name 192.168.0.103; # http访问重写为https rewrite ^ https:/$http_host$re ...

  5. form表单获取多选的值

    flask 中 form 表单直接获取多选框的值时 language = request.values.getlist('values')或 language=request.from.getlist ...

  6. vue静态文件处理

    前言: vue-cli在创建项目的时候, 会创建两个存放静态文件的目录, 1. src/assets 2. /static 这两个文件夹在项目中的作用和区别是什么, 我们今天就来看一下 静态资源处理: ...

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

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

  8. #Node.js的fs导入遇到的问题和解决方案

    一直在使用VS Code,今天打算用Node.js进行文件IO时候遇到了一些问题,fs是Node.js的核心功能之一,一开始我用Javascript编写fs模块的导入. var fs = requir ...

  9. pandas设置值-【老鱼学pandas】

    本节主要讲述如何根据上篇博客中选择出相应的数据之后,对其中的数据进行修改. 对某个值进行修改 例如,我们想对数据集中第2行第2列的数据进行修改: import pandas as pd import ...

  10. java集成swagger

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