⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mtsrel.htm

📁 pws安装 pws安装
💻 HTM
📖 第 1 页 / 共 3 页
字号:
<h4>ActiveX Data Objects (ADO)</h4>
<p>
如果应用程序使用 ADO,那么必须安装 ADO 1.5 版。更早版本的 ADO 将不能用于新的 ODBC 3.5 驱动程序管理器。ADO 1.5 包含在 Windows NT 4.0 Option Pack 安装程序中。</p>
<h3>安装 Oracle 支持</h3>
<p>
<b>为 MTS 事务的组件安装 Oracle 支持</b>
<ol>
<li>
在 Oracle 数据库服务器系统上安装 Oracle 7.3.3 版本。<p>
如果 Oracle 数据库位于 Windows NT 系统上,则安装 Windows NT 上的 Oracle 7.3.3。</p>
<p>
如果 Oracle 数据库位于 UNIX 系统上,则安装该系统上的 Oracle 7.3.3。</p>
<p>
请确保所安装的 Oracle OCIW32.DLL 是在“需要的软件”一节中所指定的正确版本。</p>
</li>
<li>
在 Oracle 数据库服务器系统上安装上按装需要的 Oracle 7.3.3 补丁版本。<p>
如果 Oracle 数据库位于 Windows NT 系统上,则安装“需要的软件”一节中所列出的 Oracle 7.3.3 补丁版本。</p>
<p>
如果 Oracle 数据库位于 UNIX 系统上,则安装 UNIX 版所要求的 Oracle 7.3.3 补丁版本。</p>
</li>
<li>
安装 Oracle 7.3.3 客户端软件。</li>
<p>
如果您的 Microsoft Transaction Server 组件访问远程的 Windows NT 或 Unix 系统上的 Oracle 数据库,应确保在 Microsoft Transaction Server 系统中装有正确的 Oracle 客户端软件。</p>
<p>
在 Microsoft Transaction Server 系统上安装指定的 Oracle 补丁版本并确保客户端软件与“需要的软件”一节表中所列的版本相匹配。</p>
<li>
安装 Microsoft Transaction Server 2.0<p>
在安装 Microsoft Transaction Server 2.0 时,将同时安装下述软件。<br><br>
<ul>
<li>
Microsoft Transaction Server 2.0,包括 Microsoft OCI Interface<br><br></li>
<li>
Microsoft ODBC 3.5 Driver Manager<br><br></li>
<li>
Microsoft ODBC Driver for Oracle<br><br></li>
<li>
ADO 1.5<br><br></li>
</ul>
</li>
<li>
删除 DTCXATM.LOG.<p>
如果没安装 Microsoft Transaction Server 2.0 Beta 版本,跳过这一步。</p>
<p>
如果已安装了 Microsoft Transaction Server 2.0 Beta 版本,使用 Windows 资源管理器来查看系统中是否有 DTCXATM.LOG 。如果有,停止 Microsoft DTC 服务并删除 DTCXATM.LOG 文件。</p>
<p>
只有在 Microsoft Transaction Server 2.0 beta 版本第一次升级时才需要删除 DTCXATM.LOG 文件。此后决不要删除 DTCXATM.LOG 文件,因为文件中可能含有极其重要的恢复信息。</p>
</li>
<li>
启动 Oracle XA 支持<p>
执行下列步骤启动 Oracle XA 支持:<br><br>
<ol>
<li>
Oracle 系统管理员必须创建被称为 V$XATRANS$ 的视图。为此,管理员必须运行一个 Oracle 提供的名为 "xaview.sql" 的脚本。该文件通常能够在 C:\ORANT\RDBMS73\ADMIN 目录中找到。<br><br></li>
<li>
Oracle 系统管理员必须将这些视图上的 SELECT 访问权限授予 public。<pre>Grant Select on V$XATRANS$ to public.</pre>
</li>
<li>
在 Oracle Instance Manager 中,单击<b>“View”</b>菜单中的<b>“Advanced Mode”</b>,然后选择左窗格中的<b>“Initialization Parameters”</b>。在右窗格中,选择<b>“Advanced Tuning”</b>并增加“分布事务”参数的数值,以便允许更多的 MTS 事务并发地同时更新数据库。</li>
</ol>
<p>
关于配置 Oracle  XA 事务支持的详细信息,请参阅 Oracle Server 文档。</p>
</li>
<li>
配置集成安全性<p>
Oracle 数据库配有集成安全性,它使用 Windows NT 验证来确认数据库用户。这将允许用户登录到 Oracle 而不用另提供用户帐号或密码。用户可以对 Windows NT 和 Oracle使用相同的用户帐号和密码。</p>
<p>
如果在连接到 Oracle 数据库时您的 MTS 组件总是提供用户帐号和密码,则表明您没有使用集成安全性。无论您的应用程序直接或间接地通过 ODBC DSN 使用用户帐号和密码,情况都是如此。无论哪种情况下,您都没有使用集成安全性并可能忽略此步骤。</p>
<p>
如果您使用集成安全性,则必须配置 MS DTC 使之运行在被授权连接 Oracle 数据库的用户名和密码下。这是必需的因为在数据库恢复期间,MS DTC 要打开 Oracle 数据库来报告不确定量事务结果。详见下述的“改变运行 Microsoft Distributed Transaction Coordinator 的用户帐号” 。使用 Oracle 安全性管理工具以确定您指定的用户名有权打开 Oracle 数据库。</p>
<p>
有关 Oracle 的集成 Windows NT 安全性工具的详细信息,请查阅 Oracle 文档。</p>
</li>
<li>
配置 Oracle 以支持更多的连接<p>
如果您想对一个 Oracle 数据库创建许多连接,则必须配置 Oracle 服务器以支持附加的数据库连接。详细信息请参阅下述的“配置 Oracle 以支持大量连接”</p>
</li>
</ol>
<h3>测试 MTS 的 Oracle 支持的安装和配置</h3>
<p>
在安装和配置 Oracle 支持之后,需要使用随 MTS 一起安装的 Oracle 测试程序来检验所安装的 Oracle。Oracle 测试程序使用 Oracle 的 OCI XA 接口,MTS 将以同样的方式使用这些接口。</p>
<p>
Oracle 测试程序确定是否能够使用 Oracle 的 XA 功能连接 Oracle 数据库。Oracle 测试程序使用标准的 Oracle 接口和事务处理功能。它不使用 Microsoft Transaction Server 和 Microsoft Distributed Transaction Coordinator。因此,测试程序的失败就表明 Oracle 的安装或配置是不正确的。如果 Oracle 测试程序的失败,请重新安装和配置 Oracle,或者与您的 Oracle 代理联系。</p>
<p>
<b>运行 Oracle 测试程序</b>
<ol>
<li>
请检查是否按照需要的软件中的要求安装了所有正确版本的软件。<br><br></li>
<li>
创建一个 ODBC DSN,用来引用 Oracle 数据库。请确保该 DSN 使用新的 Microsoft Oracle ODBC 2.0 驱动程序。<br><br></li>
<li>
确保已启用 Oracle XA 支持。<p>
在包含访问 Oracle 数据库的 MTS 组件的计算机上,删除所有现存的 Oracle 跟踪文件。最简单的办法是可使用“Windows 资源管理器”来查找定位并删除所有的 *.TRC 文件。</p>
<p>
如果 Oracle 测试程序失败,跟踪文件可以帮助您确定问题来源。通过删除所有过时跟踪文件,可以更易地找到最新创建的文件。</p>
</li>
<li>
如果已安装了 Microsoft Transaction Server 2.0 Beta 版本,使用 Windows 资源管理器来查看系统中是否有 DTCXATM.LOG 。如果有,停止 Microsoft DTC 服务并删除 DTCXATM.LOG 文件。</p>
如果没安装 Microsoft Transaction Server 2.0 Beta 版本,跳过这一步。</p>
<p>
只有在 Microsoft Transaction Server 2.0 beta 版本第一次升级时才需要删除 DTCXATM.LOG 文件。此后决不要删除 DTCXATM.LOG 文件,因为文件中可能含有极其重要的恢复信息。</p>
</li>
<li>
以 MS-DOS 命令行方式运行 Oracle 测试程序(TestOracleXaConfig.exe),并提供 Oracle 服务器用户标识、密码和服务器名。例如:<pre>c:&gt;TestOracleXaConfig.exe  -U&lt;用户标识&gt; -P&lt;密码&gt;
-S&lt;在 TNS 文件中含有的服务器名&gt;.</pre>
<p>
如果在运行测试程序的时候不带任何参数,程序将显示帮助信息,说明所需要的参数。</p>
<p>
测试程序将显示出关于每个 Oracle 操作的信息,并指出每次的操作是否成功。</p>
</li>
<li>
如果 Oracle 测试程序能够正确连接到 Oracle 数据库服务器,那么一般来说 MTS 就能用于 Oracle。如果 Oracle 测试报告了任何错误,请执行以下步骤:<br><br><ul>
<li>
记录 Oracle 测试程序显示的准确错误信息。<br><br></li>
<li>
检查在 Oracle 测试程序的执行过程中产生的 Oracle 跟踪文件。Oracle 的跟踪信息保存在 *.TRC 文件中。Oracle 跟踪文件中包含其他一些错误信息,这对于问题的诊断是特别有用的。<br><br></li>
<li>
与 Oracle 支持代理联系,以便取得帮助。</li>
</ul>
</li>
</ol>
<h3>使用 Sample Bank 应用程序检验 Oracle 安装与配置</h3>
<p>
在使用 Oracle 测试程序检验 Oracle 的安装与配置之后,用户可以使用 Microsoft Transaction Server 提供的 Sample Bank 应用程序来确认 Microsoft Transaction Server 能够访问 Oracle 数据库。</p>
<p>
<b>使用 Sample Bank 验证 Oracle 支持</b>
<ol>
<li>
首先使用 MTS 提供的 Oracle 测试程序确认已经正确安装和配置 Oracle 系统。如果 Oracle 测试程序报告任何错误信息,则必须在继续进行前修改程序。<br><br></li>
<li>
在 Oracle 数据库服务器上,创建名为 "Account" 的表。下述示例演示了如何建立 Account 表。<p>
Owner&#09;&#09;&#09;&#09;&#09;&#09;<b>scott</b></p>
<p>
Name of Table&#09;&#09;&#09;<b>Account</b></p>
<p>
Column 1 Name&#09;&#09;<b>AccountNo</b>&#09;of type  <b>NUMBER</b></p>
<p>
Column 2 Name&#09;&#09;<b>Balance</b>&#09;&#09;of type  <b>NUMBER</b></p>
</li>
<li>
在表中填入至少两行数据。下表说明如何填写该表。<p>
AccountNo&#09;&#09;Balance</p>
<p>
1&#09;&#09;&#09;&#09;&#09;&#09;1000</p>
<p>
2&#09;&#09;&#09;&#09;&#09;&#09;1000</p>
</li>
<li>
使用 ODBC 配置实用程序创建一个文件 DSN。将文件 DSN 命名为 "MTSSamples"。然后手工更新 DSN 文件,添加用户密码。下面的例子演示了如何将用户密码添加到一个文件 DSN 中。<p>
[ODBC]</p>
<p>
DRIVER=Microsoft ODBC for Oracle</p>
<p>
UID=scott</p>
<p>
PWD=<i>mypassword</i></p>
<p>
ConnectString=<i>myserver</i></p>
<p>
SERVER=<i>myserver</i></p>
</li>
<li>
保存文件 DSN,然后运行 Sample Bank 客户端。</li>
</ol>
<h3>管理 Oracle 和 Microsoft Distributed Transaction Coordinator</h3>
<h4>DLL 的名称在未来的 Oracle 版本中可能会发生变化</h4>
<p>
在发布新产品的时候,Oracle 有时会改变 DLL 的名称。Microsoft Transaction Server 需要知道某些 Oracle DLL 的名称。目前,MTS 寻找的是由 Oracle 7.3.3 版提供的 DLL 名称。如果 Oracle 重命名这些 DLL,则必许对下列注册表项值进行修改:</p>
<pre>HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Transaction Server\Local Computer\My Computer</pre>
<p>
在该项的下面,有两个字符串名称值。
<ul>
<li>
OracleXaLib&#09;&quot;xa73.dll&quot;<br><br></li>
<li>
OracleSqlLib&#09;&quot;sqllib18.dll&quot;</li>
</ul>
<h4>改变运行 Microsoft Distributed Transaction Coordinator 的用户帐号。</h4>
<p>
如果要将 Microsoft<font face="Symbol"><span style="font-family:Symbol">&#210;</span></font> Distributed Transaction Coordinator (DTC) 配置成以一不是系统帐号的帐号来运行,则必须从管理器组中指定这一帐号。如果不这样作,MS DTC 启动可能失败,并将在 Windows NT 事件查看器上看到如下信息。</p>
<pre>XATM log object failed to set log encryption key</pre>
<p>
可以按照如下为 MS DTC 配置用户 ID:<ol>
<li>
停止 MS DTC。<br><br></li>
<li>
在<b>“开始”</b>菜单中选择<b>“设置”</b>,然后选择<b>“控制面板”</b>。<br><br></li>
<li>
在控制面板中双击<b>“服务” </b>图标。<br><br></li>
<li>
在“服务”列表框中双击<b>“MS DTC”</b>。<br><br></li>
<li>
选择<b>“登录为”</b>,并指定用户名称和口令。<br><br></li>
<li>
重新启动 MS DTC。</li>
</ol>
<h4>配置 Oracle 以支持大量连接</h4>
<p>
如果希望创建指向某个 Oracle 数据库的大量连接,必须配置 Oracle 服务器以支持额外的数据库连接。</p>
<p>
如果不这样做,可能会导致下面的某些错误:<ul>
<li>
<b>SQLConnect </b>调用失败。<br><br></li>
<li>
征集调用对象事务失败,这可能导致 Oracle 跟踪文件中出现下面的错误:<br><br><ul>
<li>
会话过多<br><br></li>
<li>
TNS 服务器定位服务器名称失败<br><br></li>
<li>
分布事务过多<br><br></li>
</ul>
</li>
<li>
等待数据库锁定超时。造成该错误的原因可能是对于当前活动事务数量,配置的锁数量不足。<br><br></li>
<li>
由于有疑问的事务占有锁而导致记录冲突。</li>
</ul>
<p>
如果碰到过上面任何一个问题,请考虑增加下面的 Oracle 服务器配置参数:<ul>
<li>
sessions<br><br></li>
<li>
distributed_lock_timeout<br><br></li>
<li>
distributed_transactions<br><br></li>
<li>
dml_locks<br><br></li>
<li>
max_transaction_branches<br><br></li>
<li>
open_cursors<br><br></li>
<li>
processes<br><br></li>
<li>
queuesize</li>
</ul>
<p>
<b><u>Sessions</u></b></p>
<p>
<code>sessions</code> 的值通常应该是应用程序期望的数据库连接总数的 3 倍。</p>
<p>
<b><u>Queuesize</u></b></p>
<p>
如果 Oracle 侦听程序进程的<code> queue size </code>(队列大小)不足,侦听程序有时会在后台失败并且拒绝数据库打开请求。这种情况将发生在 Oracle Listener 收到过多的连接请求并超过侦听程序的队列大小时。碰到该错误的客户将报告错误消息“ORA-12541: 没有侦听程序”,并且客户日志或跟踪文件将显示 "ECONREFUSED" 消息。</p>
<p>
要更正该错误:
<ol>
<li>
在包含Oracle 数据库服务器的系统上停止 Oracle 侦听程序<br><br></li>
<li>
增加 Oracle 数据库服务器系统中 LISTENER.ORA、TNSNET.ORA 和 NAMES.ORA 文件的 QUEUESIZE 参数。请根据预计同时发生的,或者几乎同时发生的连接请求个数选择队列的大小。<p>
建议您为<code>QUEUESIZE </code>选择一较大的值,因为 Oracle 系统通常为应用程序打开的每一个事务数据库连接打开多个数据库连接。结果,Oracle 侦听程序队列可能会太满而溢出。</p>
<p>
例如,为了满足 100 个请求,请修改 LISTENER.ORA 文件如下:</p>
<pre>QUEUESIZE = 100</pre>
</li>
<li>
重新启动 Oracle 侦听程序。</li>
</ol>
<h3>MTS 的 Oracle 支持的已知限制</h3>
<h4>在使用 ODBC 3.5   时,需要 ADO 1.5 版本</h4>
<p>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -