oracle 10g例题,Oracle 10g 问题集锦

本文详细介绍了Oracle数据库监听服务常见的故障及解决方法,包括注册表项丢失和网络环境变化导致的问题。针对故障1,解决方案是重建注册表中的ImagePath选项;对于故障2,需要修改listener.ora和tnsnames.ora文件中的主机名。此外,还提供了ORA-12560错误的排查步骤,涉及监听服务和数据库实例的状态检查以及注册表配置。
摘要由CSDN通过智能技术生成

监听服务中Oracle数据库之中使用最主要的一个服务,但是这个服务经常会出现错误,包括以后在工作之中此服务也会出现错误,故给出两种常见错误的解决方案(故障1、故障2)

故障1:

注册表使用了优化软件(如:360安全卫士等)被删除了相关项

对于每一个系统服务实际上都会在注册表之中有所保存;

4d58dad2e821abd21ce23e40d5eca055.png

监听服务的注册项:HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\OracleOraDb10g_home1TNSListener 其下有一个“ImagePath”的选项,如果优化软件删除了,则应重新建一个“ImagePath”选项,数据名称为ImagePath且数据值数据为D:\oracle\product\10.1.0\db_1\BIN\TNSLSNR ,如下图所示:

8c55866404e2836acc85160e454d988b.png

故障2:网络环境发生改变

修改计算机名后,监听服务OracleOraDb10g_home1TNSListener不能启动了,应如何排除?

230718b0de518d520bb8be1ed31e0905.png

计算机名修改为:teacher ,如下图所示:

3f8a3c094c60819a7c7119ce74e970a5.png

解决方法:

1-重启机器后,检验服务OracleServiceMLDN和OracleOraDb10g_home1TNSListener能否正常启动?

前者能正常启动,但后者启动后,再刷新,则显示不能启动!

2-进入D:\oracle\product\10.1.0\db_1\NETWORK\ADMIN目录修改2个文件(listener.ora、tnsnames.ora),如下图所示:

d4ac34e2be27e544167510f4b2f9d7a8.png

//将HOST = mldn-teacher 修改为HOST = teacher ,在listener.ora中

32ca234fd43794ad96ab9ab422882c0e.png

//在tnsnames.ors中,将HOST = mldn-teacher 修改为HOST = teacher如下图所示:

413f1833accea45cde3e70dc3a8d13ed.png

备注:

到此为止,监听程序能正常启动!但是如果使用程序连接Oracle 10g的话,则以上的配置有可能还是不能正常访问数据库!

3-我们进行数据库名称的注册,如下图所示:

49d4c0036a49eeaba52084396bc2e570.png

115459cbbdd144df855e32ac642bf454.png

//最后是 文件-->保存网络配置-->OK!

//检查监听服务

295a506206d3bc98c5a5cc019c42f968.png

二、Oracle为我们提供了一个监听状态的程序叫LSNRCTL.exe

3ef84f192f5300c12537f5efc70a3718.png

故障3:

ORA-12560:TNS:协议适配器错误

解决方法 (此种方法好象不太理想,请博友们指点哈,谢谢!)

造成ORA-12560: TNS: 协议适配器错误的问题的原因有三个:

1.监听服务没有起起来。windows平台个一如下操作:开始---程序---管理工具---服务,打开服务面板,

启动oraclehome92TNSlistener服务。

2.database instance没有起起来。windows平台如下操作:开始---程序---管理工具---服务,打开服务

面板,启动oracleserviceXXXX,XXXX就是你的database SID.

启动2个服务(OracleServiceMLDN和OracleOraDb10g_home1TNSListener)如下图所示:

6058892baff7b706e724419d0b7c8f5c.png

一般至此,Oracle client访问应该正常了!

3.注册表问题。regedit,然后进入HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0将该环境变量ORACLE_SID设置为XXXX,就是你的database SID.或者右几我的电脑,属性--高级--环境变量---系统变量--新建,变量名=oracle_sid,变量值=XXXX,就是你的database SID.或者进入sqlplus前,在command line下输set oracle_sid=XXXX,就是你的database SID.

经过以上步骤,就可以解决问题。

思考:

如果在Linux/Unix平台下呢,如何解决呢?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值