HOWTO:ASP-to-Oracle 连接问题疑难解答

文章翻译 文章翻译
文章编号: 255084 - 查看本文应用于的产品
展开全部 | 关闭全部

概要

本文介绍了一些在解决有关从 Active Server Pages (ASP) 应用程序到 Oracle 数据库连接的问题时常用的措施。下面是一些较常见的错误信息:
Microsoft OLE DB Provider for ODBC Drivers error '80004005' [Oracle][ODBC][Ora]ORA-12154:TNS:Could not resolve service name /vdir/filename.asp, line xxx.
- 和 -
The Oracle(tm) client and networking components were not found.These components are supplied by Oracle Corporation and are part of the Oracle Version 7.3 (or greater) client software installation.

You will be unable to use this driver until these components have been installed.

更多信息

下面列出了在检查 ASP 和 Oracle 数据库间的连接问题时通常采用的步骤。
  1. 首先,验证是否能够连接到 Oracle,连接上后是否能够使用 Oracle 的 SQL Plus 工具检索数据(一种基于命令行的查询工具)。如果不能从此工具进行连接,就说明 Oracle 客户组件的安装或配置有问题,或者是没有正确使用 SQL Net Easy Config 或 Oracle Net8 Easy Config 工具为 Oracle 服务器创建别名。您必须协同您的 Oracle 数据库管理员来确保必要的 Oracle 组件已经正确安装和配置。
  2. 如果 Oracle 客户程序刚安装到 Internet Information Server (IIS) 计算机上,那么应确保至少重新启动一次计算机。有时在安装后,虽然 Oracle 组件 SQL Plus 运行正常,但是直到重新启动计算机后,与 IIS 的连接才开始工作。
  3. 查找 IIS 服务器上的 OCIW32.dll 文件的多个副本。计算机上应当只有此 .dll 文件的一个副本,并且此副本应该位于 Oracle 主文件夹的 \Bin 子文件夹下。如果发现了其他副本,请用 .bak 扩展名重命名这些副本,然后重新测试连接。在重命名所发现的任何多余的 .dll 文件副本后,您可能需要重新启动 IIS 服务。
  4. 确保当前运行的是推荐的 Oracle 组件版本。您可以根据以下 Microsoft 知识库文章进行验证:
    193225 How to Configure IIS to Connect to Oracle from ASP and ADO
    如果需要修补程序,可以从 Oracles FTP 站点获取ftp://Oracle-ftp.oracle.com. 有关如何获取和安装这些修补程序的更多信息,请与您的数据库管理员或 Oracle 技术支持部门联系。(Microsoft 技术支持部门不支持这些 Oracle 组件的配置。
  5. 检查以确保 Oracle 客户端组件安装在 IIS 服务器的本地。虽然即使没有本地安装的 Oracle 组件也能让其他程序运行,但是在使用 ASP 应用程序时,这样做会出现问题。Microsoft 建议您在 IIS 服务器上安装这些组件,不支持其他用户配置。
  6. 查看 IIS 计算机上的系统环境变量,并检查 PATH 变量。如果有任何远程共享名称或映射的驱动器指向包含 Oracle 组件的位置,请移除它们。若想使任何更改生效,必须重新启动计算机。
  7. 再次查看在 IIS 计算机上的系统环境变量,并检查 PATH 变量。确保在 Oracle 主目录下的 \Bin 文件夹是 PATH 环境变量的一部分。在默认安装中,它应当是 Orant\Bin 文件夹。您还是需要重新启动计算机才能使所做的更改生效。
  8. 尝试使用 Microsoft ODBC for Oracle 驱动程序和 Microsoft OLEDB Provider for Oracle 两者进行连接。下面是两者的连接字符串语法示例:
    'Microsoft OLEDB Provider for Oracle
    "Provider=MSDAORA.1;Data Source=Your_TNSNames_Alias;User ID=User;Password=Password"
    
    'Microsoft ODBC for Oracle DSN-Less 
    "Provider=MSDASQL;DRIVER={Microsoft ODBC for ORACLE};UID=User;PWD=Password;Server=Your_TNSNames_Alias"
    
    'Microsoft ODBC for Oracle using a DSN
    "DSN=Your_DSN_Name;UID=User;PWD=Password"
    					
  9. 禁用 SQL*Net 身份验证。为此,请编辑 SQLNET.ora 文件。 此配置文件通常存储在 Oracle 主文件夹的 Network\Admin 子文件夹中。将下面的代码行添加到此文件中。
    SQLNET.AUTHENTICATION_SERVICES = (none)
    SQLNET.AUTHENTICATION = (none)
    						
    更改之后,重新启动 IIS 服务。
  10. 向 Oracle 主文件夹中添加 IUSR_machine name 帐户和 IWAM_machine name 帐户。赋予两个帐户完全控制权。

    为此,右键单击 Windows 资源管理器中的 Oracle 主文件夹。单击属性,然后单击安全选项卡。添加相应的帐户并赋予它们完全控制权。重新启动计算机。
本文中提到的第三方产品由独立于 Microsoft 的其他公司提供。对于这些产品的性能或可靠性,Microsoft 不作任何暗示保证或其他形式的保证。

Microsoft 提供了第三方联系信息以便于您寻求技术支持。该联系信息如有更改,恕不另行通知。Microsoft 不保证此第三方联系信息的准确性。

属性

文章编号: 255084 - 最后修改: 2003年10月10日 - 修订: 4.0
这篇文章中的信息适用于:
  • Microsoft Data Access Components 1.5
  • Microsoft Data Access Components 2.0
  • Microsoft Data Access Components 2.1
  • Microsoft Data Access Components 2.1 Service Pack 2
  • Microsoft Data Access Components 2.1 Service Pack 1
  • Microsoft Data Access Components 2.1 Service Pack 2
  • Microsoft Data Access Components 2.5
  • Microsoft Data Access Components 2.6
关键字:?
kbhowto kboracle KB255084
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

提供反馈

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com