vs2008下正常连接oracle数据库,iis6下连接就出错"System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7"

时间:2023-01-24 05:56:14
环境:winxp sp3  vs2008  iis6.0  oracle10g客户端  PLSQL Developer可正常连接

    我是一个新手,刚刚开始学习asp.net,现在写了一个网站,主要是访问远程oracle数据库,网站已经在vs2008调试好了,但当我用IIS6.0把网站架好后却出错了,只要一连接oracle就出错,提示是"System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7",在网站找了一天,主要方法是修改oracle目录的权限,但我写的网站访问的远程数据,这个权限我改不了。而且按这个解决方法的思路也不对,如果是oracle目录权限的问题,那为什么在vs2008环境下可以一切正常,在IIS下就出错。
    已经为这个问题在网上苦苦找了一天了,只能来求助大家了,希望各位大侠能仗义出手帮助一下,小菜鸟不胜感激,先谢谢大家了!

8 个解决方案

#1


先把你的asp.net网站的用户身份改为Administrator。

#2


http://blog.csdn.net/lhshu2008/article/details/17002957

#3


1.你的VS2008调试与IIS6的是否在同一台机子如果不是 请确认IIS 的那台是否装了 Oracle客户端
2.如果安装了Oracle 客户端 那看一下你的IIS6的操作系统是不是64位的。如果是那请大确认你安装的Oracle 客户端是64位的还是32的。
3.Oracle 客户端是32的那要把IIS对应的网站设置成运行在x86模式下。
4.最后查看你的数据库连接是否有错吧。

#4


#1楼的方法"asp.net网站的用户身份改为Administrator",你指的是winxp系统登录用户吗?我现在系统登录的用户就是administrator,如果不是的,那你指的这个用户身份在那里改?

#2楼的方法也试了,下了最新的"instantclient-basic-win32-11.2.0.1.0",安装后PLSQL Developer可正常连接,在vs2008里网站也正常,发布后在IIS里还是连接oracle出错,出错信息与原来一样
vs2008下正常连接oracle数据库,iis6下连接就出错"System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7"

#5


在同一台机子上
系统是:32位 winxp sp3
编程软件:vs2008 (在编程环境里可以正常连接和操作远程oracle数据库)
网站:IIS 6.0  (在IIS架设网站,连接oracle就报错)
oracle10G客户端 32位的
PLSQL Developer连接远程oracle数据库正常

为什么在vs2008里运行网站就正常,在IIS里运行就不行呢?百思不解...

#6


学会google、baidu来解决你的问题。 http://hi.baidu.com/ymt962464/item/75ee536f21dadd0da1cf0f10

#7


引用 4 楼 xionghui565 的回复:
#1楼的方法"asp.net网站的用户身份改为Administrator",你指的是winxp系统登录用户吗?我现在系统登录的用户就是administrator,如果不是的,那你指的这个用户身份在那里改?

不是。

asp.net进程通常是以网络或者系统身份运行,你需要改为“系统管理员”身份。这通常是在web.config或者machine.config中配置。

#8


问题解决了,上面方法都不对,重新下载了一个oracle11g客户端就好,也不知是为什么,但是解决了问题

#1


先把你的asp.net网站的用户身份改为Administrator。

#2


http://blog.csdn.net/lhshu2008/article/details/17002957

#3


1.你的VS2008调试与IIS6的是否在同一台机子如果不是 请确认IIS 的那台是否装了 Oracle客户端
2.如果安装了Oracle 客户端 那看一下你的IIS6的操作系统是不是64位的。如果是那请大确认你安装的Oracle 客户端是64位的还是32的。
3.Oracle 客户端是32的那要把IIS对应的网站设置成运行在x86模式下。
4.最后查看你的数据库连接是否有错吧。

#4


#1楼的方法"asp.net网站的用户身份改为Administrator",你指的是winxp系统登录用户吗?我现在系统登录的用户就是administrator,如果不是的,那你指的这个用户身份在那里改?

#2楼的方法也试了,下了最新的"instantclient-basic-win32-11.2.0.1.0",安装后PLSQL Developer可正常连接,在vs2008里网站也正常,发布后在IIS里还是连接oracle出错,出错信息与原来一样
vs2008下正常连接oracle数据库,iis6下连接就出错"System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7"

#5


在同一台机子上
系统是:32位 winxp sp3
编程软件:vs2008 (在编程环境里可以正常连接和操作远程oracle数据库)
网站:IIS 6.0  (在IIS架设网站,连接oracle就报错)
oracle10G客户端 32位的
PLSQL Developer连接远程oracle数据库正常

为什么在vs2008里运行网站就正常,在IIS里运行就不行呢?百思不解...

#6


学会google、baidu来解决你的问题。 http://hi.baidu.com/ymt962464/item/75ee536f21dadd0da1cf0f10

#7


引用 4 楼 xionghui565 的回复:
#1楼的方法"asp.net网站的用户身份改为Administrator",你指的是winxp系统登录用户吗?我现在系统登录的用户就是administrator,如果不是的,那你指的这个用户身份在那里改?

不是。

asp.net进程通常是以网络或者系统身份运行,你需要改为“系统管理员”身份。这通常是在web.config或者machine.config中配置。

#8


问题解决了,上面方法都不对,重新下载了一个oracle11g客户端就好,也不知是为什么,但是解决了问题