解决asp.net安装后无法访问oracle数据库问题

王朝oracle·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

解决ASP.NET安装后无法访问Oracle数据库问题,这篇忘了那里转的,

安装完ASP.NET,Oracle9i客户端后,使用System.Data.OracleClient访问Oracle数据库时收到如下信息

System.Data.OracleClient requires Oracle client software version 8.1.7 or greater.

原因

Oracle 9i Release 2 客户端在安装到Windows的NTFS分区下时的安全认证设置不正确,引起本机的Authenticated Users用户无法看到ORACLE_HOME目录下的内容; 这导致在ASP.NET以Authenticated Users权限使用System.Data.OracleClient连接Oracle数据库时报出以上错误。

解决

要解决以上问题,只要给Authenticated Users 组加上访问Oracle Home目录的权限即可

以Administrator权限登录Windows.

启动Window 资源浏览器找到ORACLE_HOME目录,如C:\Oracle\ora92

右键弹出菜单,选择该目录共享与安全(Win2000下要点击属性)

点击 “安全” 页签

在组和用户名称列表中点击“Authenticated Users” 项.

在该用户的权限列表中,将“读取和运行”的选择框置为不选中状态

再次点击“读取和运行”的选择框,将其设置为选中状态

点击“高级”按钮并在权限项目中确定“Authenticated Users” 是否拥有“读取并运行”权限并应用于“该文件夹,及子文件夹和文件”. 如果不是,双击这样,并确保权限可以“应用于” “该文件夹,及子文件夹和文件”. 该项非常重要你一定要核查.

点击“确定” 按钮

重启动, 以使得所有的修改生效.

================================================

The 'OraOLEDB.Oracle.1' provider is not registered on the local machine的原因这种情况有3种可能的原因

1.装Oracle 的机器是不是NTFS的?如果是的话,将\Ora81下的BIN的权限,全部放开,给所有用户。

(不然在B/S结构下会因为没有权限访问目录而报这个错误)

2.如果数据库服务器是Oracle816的。在服务器的那台机器上找Ora81\network\ADMIN下的sqlnet.ora文件,把里面的

SQLNET.AUTHENTICATION_SERVICES= (NTS)改成

SQLNET.AUTHENTICATION_SERVICES= (NONE)

(这种会造成某些机器上报驱动初始化失败的错误,在用OracleClient下出现过一次)

3.如果以上都没有解决问题。可以考虑是不是注册表里的注册真的丢失了。(可能性比较小,windows还是比较安全的)

regsvr32 ..\ORACLE_HOME\bin\OraOLEDB.dll

再不行可以重装一下客户端试试。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航