我们需要在Oracle里面建立两个视图

  • 栏目:数据 时间:2020-04-30 00:21
<返回列表

1.根据Q193893,我们需要在Oracle里面建立两个视图。

现象:
        浏览ASP页面提示   500内部错误

Information about using Oracle with Microsoft Transaction Server and COM+ components

事件查看器中:
        [1]:
                服务器无法加载应用程序 '/LM/W3SVC/1/ROOT'。错误是 '没有注册类别'。 
                有关此消息的详细信息,请访问 Microsoft 联机支持站点: 。

?id=193893

                有关更多信息,请参阅在 的帮助和支持中心。

根据我们以往的经验,我们可以尝试用SYS账号运行Oracle自带的脚本。脚本的默认路径在:

        [2]:
                无法启动 MS DTC 事务管理器。

C:/oracle/ora92/rdbms/admin/xaview.sql

                有关更多信息,请参阅在 的帮助和支持中心。

请在SQL Plus中运行脚本。

        [3]:
                MS DTC 事务管理器启动失败。LogInit 返回错误 0x2。

2.以上命令会建立两个视图。我们还需要手动给这两个新建立的视图添加Public权限:

                有关更多信息,请参阅在 的帮助和支持中心。

SQLgrant select on v$xatrans$ to public with grant option;

        [4]:
               找不到 MS DTC 日志文件。在确认所有由 MS DTC 协调的资源管理器不具有“不确定”状态的事务

SQLgrant select on v$pending_xatrans$ to public with grant option;

               之后,请运行 msdtc -resetlog 创建日志文件。

SQLgrant select any table to public;

               有关更多信息,请参阅在 的帮助和支持中心。

以上的操作是在Oracle数据库所在的电脑上进行。下面的操作是在部署COM+ 组件的电脑上进行:

我的运行环境:
                WinXP Pro SP2; 

  1. 根据Q193893, 我们需要修改注册表:

解决办法:
                [1]:
                检查你的DTC服务(全名:Distributed Transaction Coordinator)是否可以正常启动,如果正常的话

HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/MSDTC/MTxOCI

                请你跳过此步骤;如果出错,无法正常启动,请在开始菜单的运行中 运行:msdtc -resetlog  

OracleXaLib=oraclient9.dll

                以创建 日志文件。

OracleSqlLib=orasql9.dll

                如果运行这个命令没出错 请跳过下面这行字。

OracleOciLib=oci.dll

                如果运行这个命令出错请转到本文的下半部分的这个地方开始看。(==== 以下部分是网上重新找的资料 (如果执行上面步骤仍然不行,请继续) ==)

如果是Windows 2003或者Windows XP2,我们还需要建立:

                重起机器,检查IIS是否可以正常使用,若不行继续。

HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/MSDTC/XADLL

                [2]:
                在CMD下执行以下命令:
                cd %windir%system32inetsrv 

然后添加名字为:

                rundll32 wamreg.dll, CreateIISPackage 

mtxoci.dll的字符串键,内容为:

                regsvr32 asptxn.dll

C:/WINDOWS/SYSTEM32/MTXOCI.DLL

                重起机器,我的问题到这步已经可以完美解决!遇到这个郁闷的问题 系统导了一次,IIS重装了若干

  1. 如果您是在Windows 2003或者Windows XP上,我们需要给MSDTC账号设定对应的权限。MSDTC运行在Network Service账号下。请您把Network Service账号添加到Administrators组里面。

                次,BAIDU了一些资料,终于解决了,希望对你有帮助。

========= 以下部分是网上重新找的资料 (如果执行上面步骤仍然不行,请继续) ==============================
1.  系统开始菜单里   点  运行 输入:
regsvr32 jscript.dll                    (注:这个命令修复java脚本相关的动态链接库)
重新点运行 输入:
regsvr32 vbscript.dll                 (注:这个命令修复vb脚本相关的动态链接库)

2.  微软的关于MS DTC 无法安装的解决办法的文章:

如何在运行 Windows XP 的计算机上重新安装 Microsoft 分布式事务处理协调器

==========================

将步骤摘抄到这里:

本文介绍如何在运行 Microsoft Windows XP 的计算机上重新安装 Microsoft 分布式事务处理协调器 (MS DTC)。 
更多信息
一般而言,在运行 Windows XP 或更高版本的计算机上不必重新安装 Microsoft 分布式事务处理协调器 (Msdtc.exe)。如果使用较早的操作系统,在安装诸如 Microsoft SQL Server 6.5 的软件后,可能必须重新安装 MS DTC,因为此软件会使用其包含的版本覆盖 MS DTC 二进制文件。重新安装正确版本的 Msdtc.exe 可以还原二进制文件。在 Windows XP 和更高版本中,Windows 文件保护 (WFP) 功能可确保当前系统二进制文件不被替换。 

但是,如果必须在运行 Windows XP 的计算机上重新安装 MS DTC,请使用下列过程。

警告:如果使用下列步骤,则所有未完成的事务都将丢失。确保在执行下列步骤之前,没有活动的事务。

警告:注册表编辑器使用不当可导致严重问题,可能需要重新安装操作系统。Microsoft 不能保证您可以解决因注册表编辑器使用不当而导致的问题。使用注册表编辑器需要您自担风险。 1. 在“管理工具”中,打开“服务”,然后停止所有服务。 
2. 在“启动类型”列中,除下表中的服务以外,将所有其他服务的启动类型更改为“手动”。 

注意:建议您记下所更改的服务,以便可以在步骤 7 中正确还原这些值。 ? Alerter 
? COM+ Event System 
? Computer Browser 
? Distributed Link Tracking Client 
? DNS Client 
? Event Log 
? IPSEC Services 
? Logical Disk Manager 
? Messenger 
? Net Logon 
? NT LM Security Support Provider 
? Network Connections 
? Plug and Play 
? Remote Procedure Call (RPC) 
? Remote Procedure Call (RPC) Locator 
? Removable Storage 
? Security Accounts Manager 
? Server 
? System Event Notification 
? Task Scheduler 
? TCP/IP NetBIOS Helper 
? Windows Management Instrumentation 
? Windows Management Instrumentation Driver Extensions 
? Windows Time 
? Workstation 

3. 关闭“服务”,然后重新启动计算机。 
4. 在命令提示符下,键入以下命令: 
%WINDIR%System32msdtc.exe -uninstall 
5. 启动注册表编辑器,如果存在下列注册表项则将其删除: ? HKEY_CLASSES_ROOTCID  
? HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesMSDTC 
? HKEY_LOCAL_MACHINESYSTEMControlSet001ServicesMSDTC 
? HKEY_LOCAL_MACHINESYSTEMControlSet002ServicesMSDTC 
? HKEY_LOCAL_MACHINESoftwareMicrosoftMSDTC 

6. 在命令提示符下,键入 %WINDIR%System32msdtc.exe -install。 
7. 等待磁盘活动停止,然后将所更改的服务的启动类型还原为其原始值。 
8. 在注册表中,创建以下注册表项: 
HKEY_LOCAL_MACHINESOFTWAREMicrosoftMSDTCXADLL 
9. 在命令提示符下,键入 regsvr32 mtxoci.dll。

您将收到一条表明 Mtxoci.dll 中的 DllRegisterServer 已成功的消息。单击“确定”关闭该消息。 
10. 重新启动计算机。 
11. 在命令提示符下,键入 %WINDIR%System32msdtc.exe -resetlog。 

=======================================================================================
到这里MS DTC 已经安装成功 重新运行msdtc -resetlog  和解决办法的步骤2

您可能感兴趣的文章:

上一篇:sqlserver 中ntext字段的批量替换 下一篇:没有了

更多阅读

我们需要在Oracle里面建立两个视图

数据 2020-04-30
1.根据Q193893,我们需要在Oracle里面建立两个视图。 现象:         浏览ASP页面提示   500内...
查看全文

11在UltraLite数据库中提供了一些新特性,

数据 2020-04-30
总结SQL Anywhere11新增加的功能旨在满足前端数据库的性能、可靠性和可扩展性的需求。它同样也...
查看全文

sqlserver 中ntext字段的批量替换

数据 2020-04-28
一款mssql server 的ntext字段里面数据替换ntext长度可变的 Unicode数据,最大长度为 2^30 - 1 (1,073,7...
查看全文

友情链接: 网站地图

Copyright © 2015-2019 http://www.koi-bumi.com. 韦德体育有限公司 版权所有