在用VS.NET2005+Oracle9.2进行开发的时候,在本地测试可以通过,但是在服务器上不能实现(复制网站,发布网站都不行),报错的具体内容,没记下来,大概就是:
在网上查询了很长时间也没有见效,后来综合网上的很多方法,终于测试成功,现分享一下。
出错的原因:
1.
虽然报的是需要安装客户端
8.1.7
及以上版本但是并非这个,而是
.net
账户没有访问
Oracle\bin
文件夹的权限
2.windows
2003
操作系统安装在
NTFS
格式的盘中,如果是
FAT32
也就没有这个问题,看来
NTFS
格式在安全性这方面作的确实出色。
废话少说,还是看看我的解决方法吧。
1.
在
Oracle\bin
文件夹上右键
-------
共享和安全
------
安全
-----
点击“添加”按钮,出现下面的界面
2.
点击“高级”
----
“立即查找”,在下面显示的账户中选择“
NTWORK SERVICE
”
(
注意:
IIS6
中
aspnet
的账户是
NTWORK SERVICE
;而在
IIS5
中是
aspnet
。总之,在搜索出的账户中有这两个账户中的哪一个就选哪一个,因为我没有见过这两个账户共存的,哈哈,估计不能共存吧!这个市个人见解不代表
Microsoft
的意见
)
----
将所有的权限都赋予
----
确定。
3.
在“计算机管理”
(
哈哈,如果不知道怎么进入那就没办法说了
)-----
双击右侧的
Administrators------
将上一步搜索出来的账户添加进去。
4.
重新启动
IIS
即可。可以在“运行”中输入“
IISRESET
”。
注意:上面这些是设置权限方面的,如果配置完上面这些报
ORA-12154
的错误,需要在服务器上配置“
Net Configuration Assistant
”。
测试的环境:Win2003(NTFS)+Oracle9.2+Vs.net2005
附录:解决“需要Oracle 客户端软件8.1.7 或更高版本”的方法
<!---->
<!---->在oracle/bin目录,
<!---->1、加入asp.net machine account(aspnet) 用户帐号;
<!---->2、授完全权限;
<!---->3、将aspnet帐号加入administrators用户组里,并重起iis。
<!---->注意,3个步骤一个都不能少。
<!---->
<!---->最后oracle/bin目录的用户群如下:
asp.net machine account
administrator
authenticated users
我用的delphi6.0中的ado连接已与oracle数据库配置好连接的odbc数据源,结果与ado连接的adoquery会出现“ora-12154,TNS:无法处理服务器名”的错误。请问高手如何解决此问题?
附:程序是在oracle客户端开发的,现在在服务器上就会出现以上错误。
程序是在oracle客户端开发的,现在在服务器上运行就会出现以上错误。服务器没有安装oracle客户端程序.
服务器tnsnames.ora如下:
CYWC =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = yjl)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = oracle.net)
)
)
ORACLE =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = yjl)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = oracle.net)
)
从这几个方面来检查一下:
1.是由于DOMAIN设置不正确
1.1在tnsname中加了DOMAIN,但在sqlnet中没有配置
如
DEV1.WORLD =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS =
(PROTOCOL = TCP)
(Host = 145.45.78.56)
(Port = 1521)
)
)
(CONNECT_DATA = (SID = ORCL)
)
)
而sqlnet.ora
#NAMES.DEFAULT_DOMAIN=world --被注释掉了
~~~~~~~~~
将注释去掉
~~~~~~~~~
1.2如果现象还是存在,那可能是由于脚本中有CTRL-M (^M) 或者CTRL-R (^R)
比如我们在ultraedit上编辑了文件,用ftp的bin方式传过去(或者相反),那么就可能包含了这些字符。所以建议用ultraedit的conversions=>dos to unix 并在传送ftp时用ascii模式
1.3在sqlnet.ora中的NAMES.DIRECTORY_PATH将TNSNAMES放在最前面
如
NAMES.DIRECTORY_PATH=(TNSNAMES)
NAMES.DIRECTORY_PATH=(TNSNAMES, HOSTNAME)
1.4
echo $TNS_ADMIN查看是否有数据,确保设置正确的路径
1.5设置AUTOMATIC_IPC = OFF
1.6确保sqlnet.ora和tnsname.ora有正确的权限(777)
分享到:
相关推荐
《Oracle Providers for ASP.NET》开发者指南是一本详细介绍如何在ASP.NET环境中集成和使用Oracle数据库的技术手册。此版本(11g Release 1)适用于那些希望在其Web应用程序中利用Oracle数据库强大功能的开发人员。...
在ASP.NET环境中,你可以将这些操作封装到一个DAL(数据访问层)类中,以便在多个页面或功能中重用。同时,考虑使用事务处理以确保数据的一致性,特别是在执行涉及多条记录更改的操作时。 通过上述步骤,我们可以...
ASP.NET数据库网站设计教程是一门深入讲解如何使用ASP.NET技术构建与数据库交互的web应用程序的课程。这门教程包括了理论知识的讲解以及实践操作的示例,旨在帮助学习者掌握构建动态、数据驱动的网站所需的技能。 ...
1. **Web.config文件配置**:对于基于ASP.NET的应用程序,还需要在项目的`Web.config`文件中添加一些特定的配置来支持Oracle数据源。示例如下: ```xml (DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)...
在ASP.NET中,TreeView可以通过数据绑定与XML、数据库或其他数据源连接,也可以通过编程方式添加、删除和修改节点。 3. 文件操作:在ASP.NET中,文件操作是常见的任务,包括读取、写入、创建、移动和删除文件。使用...
在ASP.NET中,最常用的数据库系统是Microsoft SQL Server,但也可以支持MySQL、Oracle、SQLite等其他数据库。与SQL Server交互时,开发者通常会使用ADO.NET,这是一个.NET Framework的一部分,提供了连接数据库、...
ASP.Net是Microsoft公司推出的一种Web应用程序开发框架,它基于.NET Framework,提供了强大的服务器端控件、事件驱动模型以及内置的安全性支持,非常适合开发动态、交互性强的Web应用。对于教务管理系统的实现,ASP...
ASP.NET是微软公司推出的一种用于构建Web应用程序的框架,它基于.NET Framework,为开发者提供了强大的开发工具和环境,使得创建动态、数据驱动的网站变得更加容易。清华大学作为国内顶尖学府,其教学资源一直备受...
在本项目中,我们主要探讨如何使用ASP.NET、C#编程语言与Oracle数据库进行交互,同时结合Visual Studio 2013(VS2013)作为开发环境来创建一个功能丰富的网页应用。这个项目的核心目标是实现对数据库的数据操作,...
这个课程设计项目——“学生管理系统/学生论坛系统”是ASP.NET技术在实际应用中的一个实例,它可以帮助学习者深入理解ASP.NET的核心概念和开发流程。 首先,ASP.NET提供了丰富的控件库和强大的数据绑定功能,使得...
ASP.NET与多种数据库系统兼容,如SQL Server、MySQL、Oracle等,通过ADO.NET提供底层访问支持。ADO.NET是一个数据访问组件,包括DataSet、DataTable、DataAdapter等对象,用于在内存中管理数据并与数据库交互。 三...
配置好SqlDataSource后,可以将其与ASP.NET中的数据呈现控件(如GridView、Repeater等)绑定,以展示或编辑数据库中的数据。 **六、注意事项** 1. 使用Access数据库时,需要确保安装了正确的数据库驱动程序,例如...
在ASP.NET中,数据库连接文件是实现数据驱动应用程序的关键组成部分,它允许开发者与各种数据库进行交互,如SQL Server、MySQL、Oracle等。在本讨论中,我们将深入探讨ASP.NET数据库链接文件的重要性和其工作原理。 ...
在"ASP.NET程序设计-电子教案"中,重点讲解了ADO.NET的数据访问以及基本控件的运用,这些是构建高效、数据驱动的ASP.NET应用的基础。 1. ADO.NET数据访问: ADO.NET是.NET Framework中的一个组件,用于与各种...
3. **统一的数据访问层(ADO.NET)**:ASP.NET使用ADO.NET进行数据库操作,它提供了一组接口和类库,方便与各种数据库进行交互,如SQL Server、Oracle等。 4. **状态管理**:ASP.NET提供了多种状态管理机制,如视图...
在这个实验室预约系统中,ASP.NET发挥了关键作用,为用户提供了在线预约实验室资源的平台。 该系统的核心功能可能包括以下几个方面: 1. 用户管理:用户注册、登录和权限管理是系统的基础。ASP.NET提供了内置的...
例如,可以通过配置文件更改数据库供应商,从SQL Server切换到Oracle或MySql,而无需修改业务逻辑层的代码。 8. **缓存支持**:为了提升性能,可能会集成ASP.NET的缓存机制,对于频繁访问但不常改变的数据,可以...
在CRM系统中,ASP.NET主要负责用户界面的设计与交互,使得用户能够方便地进行客户信息的录入、查询、修改和删除等操作。通过ASP.NET的Web表单,开发者可以构建出直观且响应迅速的用户界面,提高用户体验。 ADO.NET...
在ASP.NET中,配置文件(如web.config)是管理和更改应用程序设置的主要方式,它允许开发者灵活地配置应用程序的行为,如数据库连接字符串、安全性设置、HTTP模块等。缓存策略,如Page Output Cache、Fragment Cache...