iis连接oracle数据库的历程!

由于项目需要,得使用Oracle数据库,版本为10G,平台是.NET。之前部署了一个在win2003下的虚拟机平台,能正常使用。

最近弄了个ESXI6.0的虚拟机,在上面安装了另外的一套win2003,准备把产品部署在上面。

Oralce安装好了,连接时就又来坑了。。搞了大半天。才搞好,现在记录一下。


最开始时使用netstat -an查看,1521端口没有在监听。在“服务”管理器里,看到****TNSListener服务也是没有启动,右键启动时,提示“***启动后又关闭***”。

各种百度、BING都看了,不知道什么问题。最后,查了一下环境变量:ORACLE_HOME,发现值为:c:\oralce,看了一下其他的配置,应该不对,改成了:c:\oracle\product\10.1.0\Db_1\,然后重启服务器,OK了,监听端口了,服务也提示是“已启动”状态。


但是,还是连接不上,提示:"System.Data.OracleClient需要Oracle客户端软件version8.1.7或更高版本"。这个问题在原来配置时也遇到,是版本不对,找了新版本后就能连接了。但是,这次使用的新版本,还是这样提示。头痛。。。。


百度查了,说是权限问题,按照上面的提示设置了权限,还是不行。。。又折腾了两小时,最后发现,我之前 设置的权限是针对Administrators和ASPNET账户的。iis6下要给BIN文件夹设置Network Service组全部权限,iisreset后就不提示了。


好啦,不提示这个版本问题了,新问题又来了。。。

提示:"ORA-12514: TNS:listener does not currently kNow of service requested in connect descriptor"

字面意思是找不到指定的Service。看了一下listener.ora里,没有我指定的Service.使用lsnrctl status查看,也没看到指定Service名称的实例在运行。

好了,就是它了,打开listener.ora,添加

(SID_DESC=
(GLOBAL_dbnAME=oracle)
(ORACLE_HOME=/opt/oracle/product/9.2.0.4)
(SID_NAME=服务名称)
)

重启监听,重启iis,数据库正常连接上了。




相关文章

Java Oracle 结果集是Java语言中处理数据库查询结果的一种方...
Java AES和Oracle AES是现代加密技术中最常使用的两种AES加密...
Java是一种广泛应用的编程语言,具备可靠性、安全性、跨平台...
随着移动互联网的发展,抽奖活动成为了营销活动中不可或缺的...
Java和Oracle都是在计算机领域应用非常广泛的技术,他们经常...
Java 是一门非常流行的编程语言,它可以运行于各种操作系统上...