我有一个使用 Vb.net9 在 Vista 上开发的网站。它与 Oracle 建立连接。对于连接,我使用 System.Data.OracleClient。它在我的机器和我们的测试服务器上运行良好,但在生产服务器上不起作用。我们在服务器上安装了Oracle Client 11。错误是System.Data.OracleClient需要Oracle客户端软件版本8.1.7
我们已经尝试过,制作一个打开连接的控制台应用程序,连接运行良好,打开,显示一条消息,一切都很好。
然后我们制作一个简单的Web表单,将其放在程序的目录中,只需一个按钮,打开连接,try..catch,抓取错误,同样的错误。
控制台应用程序在管理员下运行,网站在 iwam 下运行。难道iwam有不同的道路吗?
我已经多次遇到这个错误:
Cause
在 NTFS 的 Windows 上安装 Oracle 客户端时,安全权限设置不正确。其结果是内容ORACLE_HOME
计算机上经过身份验证的用户看不到该目录;这会导致错误System.Data.OracleClient
正在使用经过身份验证的用户权限从 ASP.NET 与 Oracle Connectivity 软件进行通信。
Solution
要解决此问题,您必须向经过身份验证的用户组授予 Oracle 主目录的权限。
- 以用户身份登录 Windows行政人员特权。
- 启动 Windows 资源管理器并导航至
ORACLE_HOME
folder.
- 选择属性
ORACLE_HOME
folder.
- 点击Security的选项卡特性 window.
- 点击经过身份验证的用户中的项目Name list.
- 取消勾选读取并执行框中的权限列出下Allow column.
- 重新检查读取并执行框下的Allow column.
- 点击Advanced按钮并在权限条目验证经过身份验证的用户经许可列出:读取并执行,并应用于:该文件夹、子文件夹和文件。如果没有,请编辑该行并确保Apply To下拉框设置为该文件夹、子文件夹和文件。这应该已经正确设置,但验证它很重要。
- 单击“确定”按钮,直到关闭所有安全属性窗口。光标可能会显示沙漏几秒钟,因为它将您刚刚更改的权限应用于所有子文件夹和文件。
- 重新启动,以确保更改已生效。
再次尝试您的应用程序。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)