ASP.NET在IIS上部署使用Oracle数据库无法连接数据库解决方法

修改了计算机名称,iis访问数据库时有时候能成功,有时候失败,还在报“值不能为空”,value is not null等错误!!!!


经过提示修改了,oracle安装目录下的network service的全部授权(读取,写入,修改。。。。),重启iis后成功。


1.在Oracle/bin文件夹上右键-------共享和安全------安全-----点击“添加”按钮, 

2. 点击“高级” ---- “立即查找”,在下面显示的账户中选择“ NTWORK SERVICE ( 注意: IIS6 aspnet 的账户是 NTWORK SERVICE ;而在 IIS5 中是 aspnet )
---- 将所有的权限都赋予 ---- 确定。
3.在“计算机管理”(哈哈,如果不知道怎么进入那就没办法说了)-----双击右侧的Administrators------将上一步搜索出来的账户添加进去。


找了半天 ,终于搞清楚了原因。原来当Oracle 9.2运行在NTFS的分区上时,对于某些非administrator组的用户,ORACLE_HOME 目录是不可见的,而在windows server 2003下asp.net应用使用的帐户是netword service,因此无法创建oracle连接,只要重设一下ORACLE_HOME目录的权限就可以了。步骤如下: 
1、以管理员的用户登录; 
2、找到ORACLE_HOME文件夹(我的是C:/oracle/ora92),点右键,选属性--安全,在组或用户栏中选“Authenticated Users”,在下面权限列表中把“读取和运行”的权限去掉,再按应用;重新选上“读取和运行”权限,点击应用;选权限框下面的“高级”按钮,确认“Authenticated Users”后面的应用于是“该文件夹、子文件夹及文件”,按确定把权限的更改应用于该文件夹; 
3、重新启动计算机,让权限设置生效(请注意,这一步很重要); 
4、登录后运行asp.net应用,正常取得Oracle数据库的数据。 (转载)

修改配置文件后,要重启iis程序池!!!!!(win2008 server),不然不起效!!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值