笔者在使用Oracle8.0数据库系统时发现了一个比较有趣的问题,我在安装好了ORACLE8.0后,启动它的组件ORACLE NET 8 EASY CONFIG配置了一个新的服务器名称SERVICE8.然后我就信心十足地打开SQL*PLUS组件,按照它的提示依次输入默认的用户名称sys、密码change_on_install、服务器名称SERVICE8,敲回车,画面显示连接ORACLE8成功,一切OK。这时,我就可以调用SQL语句大军来冲击数据库城池了。可是好景不长,当我退出SQL*PLUS后,我在NT下面配置了网络。等我下一次再启动SQL*PLUS时,跟上一次样,按照它的提示依次输入默认的用户名称sys、密码change_on_install、服务器名称SERVICE8,但是这次画面提示为(错误478,TNS:监听器不存在),我考虑了一下,我根本就没动有关ORACLE8的文件,在第一次与第二次启动SQL*PLUS之间,我无非就配置了NT网络,难道ORACLE8的监听器与我的NT网络有关系?但很快我就否定了这种想法,因为ORACLE8是一个独立的数据库系统,怎么会与NT网络配置有关呢?因此,我又跑到NT的控制面板中的服务下面去看了看,唉!该死,原来ORACLETNSLISENER80(它是ORACLE8的监听器)根本就没启动,我启动完ORACLETNSLISENER80,心想这下应该没问题了,因此,我满怀希望又再一次启动SQL*PLUS,结果令人大失所望,错误依旧.当我打开控制面板一看,监听器服务又自动停止了,反反复复试了好几次,监听器服务就是启动不起来,这回,我认定是ORACLE8系统坏了,没办法,我只好又在NT上重新安装ORALCE8,但错误还是一样,这可是给我当头一棒.重新安装都不行,那指定不是ORACLE8本身的问题了.
过了一天,我灵机一动,既然ORACLE是非常优秀的数据库操作系统,那么,它一定会自动记录操作过程中的错误,监听器翻译成英语是listener.在平时学习ORACLE8的过程中,得知以ora为扩展名的文件是很重要的,一般在这种文件里都记录了数据库操作过程中的具体情况,就凭这一点,我想监听器错误一定是记录在list*.ora文件里,我用NT的查找功能,果然找出了listenora8.ora文件,(因为我建的数据库名叫ora8,所以它的文件名称也就成了listen ora8.ora了)用记事本打开一看,里边的内容全是有关的登录数据库方面的,最近两次不成功的登录也全部记录在案,上面的提示是,由于ipx协议不存在,oraclelistener80无法启动,监听失败.原来如此,我在配置NT网络时,我只配置了Tcp/ip协议,我在NT的网上邻居的协议选项添加ipx协议以后,重新进入SQL*PLUS,错误不复存在,一切OK.
作者:潘赳奔