在win2008上安装oracle11G客户端,连接数据库的时候报System.Data.OracleClient需要Oracle客户端软件8.1.7或更高版本 ,系统在win7上没有问题,估计是权限出了问题,通过查找找到如下文章得以解决
问题
安装完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目录的权限即可
1、以Administrator权限登录Windows.
2、启动Window 资源浏览器找到ORACLE_HOME目录,如C:\Oracle\ora92
3、右键弹出菜单,选择该目录共享与安全(Win2000下要点击属性)
4、点击 “安全” 页签
5、在组和用户名称列表中点击“Authenticated Users” 项.
6、在该用户的权限列表中,将“读取和运行”的选择框置为不选中状态
7、再次点击“读取和运行”的选择框,将其设置为选中状态
8、点击“高级”按钮并在权限项目中确定“Authenticated Users” 是否拥有“读取并运行”权限并应用于“该文件夹,及子文件夹和文件”. 如果不是,双击这样,并确保权限可以“应用于” “该文件夹,及子文件夹和文件”. 该项非常重要你一定要核查.
9、点击“确定” 按钮
10、重启动, 以使得所有的修改生效.
ORACLE10.1和WIN2003环境下,需要找到正确的目录才可以,否则不会有相应的用户出现,我找到的是db_1这个目录,不需要重新启动就可以.
如何关闭简单文件共享
要禁用简单文件共享,请按照下列步骤操作:
1. | 单击“开始”,然后单击“我的电脑”。 |
2. | 在“工具”菜单上,单击“文件夹选项”,然后单击“查看”选项卡。 |
3. | 在“高级设置”部分中,清除“使用简单文件共享(推荐)”复选框。 |
4. | 单击“确定”。 |
问题描述:服务器端装的是Windows XP 和Oracle 10g。在服务器端能够正常的访问Oracle数据库,但远程访问该数据库(使用VS 2005,客户端同样是Oracle10g)提示“System.Data.OracleClient需要Oracle客户端软件8.1.7或更高版本”。
弄了一个下午加晚上,终于找到解决的办法:
1.一定要关闭Windows 防火墙;
2.找到ORACLE_HOME文件夹(服务器端是D:\oracle)。点击右键,选属性--安全,在组或用户栏中选“Authenticated Users”,在权限列表中把“读取和运行”的权限去掉,再按应用(据说这是Oracle的一个Bug,在9i版本中也存在);重新选上“读取和运行”权限,点击应用;选权限框下面的“高级”按钮,确认“Authenticated Users”后面的应用于是“该文件夹、子文件夹及文件”,按确定把权限的更改应用于该文件夹;
3.重新启动计算机,让权限设置生效(也可以不重新启动,在运行里运行cmd打开命令窗口,运行命令iisreset,重启下IIS,就可以正常访问);
4.最后客户端如果还不能访问,(我客户端用的是VS2005,用的是其内置的IIS测试代码)重新启动VS2005即可。
原文:http://www.cnblogs.com/strawberryww/archive/2009/03/20/1417404.html