在Oracle的监听器(Listener)配置修改的时候,突然遇到了NL-00051错误,里面不允许保存配置信息,到底是什么原因,如何解决呢。
首先发现,如果Oracle10g默认生成的监听器是没有listener.ora文件的,而是一个动态的监听器,所以这个时候你如果用save_config命令来保存配置,会发现因为找不到这个listener.ora配置文件而出错。解决方法就是生成这个文件。我们可以使用netca工具,在这个工具中我们新建一个监听器,这样就会发现在NETWORK/ADMIN目录下生成了listener.ora文件。但是这个时候我们再用save_config命令,仍然发现出现错误,这个是怎么回事呢。
原来我们还需要重新启动Listener,因为原来的Listener没有重新启动,所以这个时候还是用的以前的动态的监听器,当重新启动以后,再调用save_config命令,就发现已经正常没有错误了。