你目前正处于脱机状态,正在等待 Internet 重新连接

如何使用 DTCTester 工具

注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。

点击这里察看该文章的英文版: 293799
不再更新的 KB 内容免责声明
本文介绍那些 Microsoft 不再提供支持的产品。因此本文按“原样”提供,并且不再更新。
概要
DTCTester 测试对指定 Microsoft SQL Server 分布式的事务。 此工具可帮助测试通过防火墙或网络的分布式的事务。DTCTester 针对 SQL Server 数据库中使用 ODBC API 来执行分布式的事务。

下载 DTCTester 工具

以下文件是可从 Microsoft 下载中心下载:
DownloadDownload the DTCTester package now.有关如何下载 Microsoft 支持文件的其他信息请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
119591如何从联机服务获得 Microsoft 支持文件
Microsoft 扫描此文件的病毒。Microsoft 使用该文件已过帐的日期上获得的最新病毒检测软件。该文件存储在安全性得到增强的服务器,这有助于防止未经授权的情况下对其进行更改文件上。

DTCTester 工具会做些什么?

  • 通过使用数据源名称 (DSN) 和用户名和密码,您在命令行上使用提供的默认网络库建立 SQL Server 的连接。
  • 创建一个临时表。
  • 登记在事务中的连接。
  • 执行插入操作临时表上。
  • 提交分布式的事务。
  • 选择插入值,以确保它已提交。
  • 关闭连接。

如何使用 DTCTester 工具

  1. 对于您通过 ODBC 实用程序中 Control Panel SQL Server 创建 ODBC 数据源。
  2. 从命令行执行以下操作:
    dtctester <dsn name > <user name > <password >
    替换为适合您的环境的括号中值。

典型 Where DTCTester 工具失败的原因

  • 防火墙都有不正确的端口已关闭。
  • 没有错误 WINS/DNS 项。
  • 配置错误的 SQL Server 群集或双网络适配器。
  • 其他配置不正确的网络设置。

在 DTCTester 失败时发生的错误的示例

Command Line: dtctester bad baduser badpassExecuted: dtctesterDSN: badUser Name: baduserPassword: badpasstablename=#dtc7421Creating Temp Table for Testing: #dtc7421Warning: No Columns in Result Set From Executing: 'create table #dtc7421 (ival int)'Initializing DTCBeginning DTC TransactionEnlisting Connection in TransactionError:SQLSTATE=25S12, Native error=-2147168242,msg='[Microsoft][ODBC SQL Server Driver] Distributed transaction error'Error:SQLSTATE=24000, Native error=0,msg=[Microsoft][ODBC SQL Server Driver]Invalid cursor stateAborting DTC TransactionReleasing DTC Interface PointersSuccessfully Released pTransaction Pointer					

成功 DTCTester 输出的示例

Command Line: dtctester test saExecuted: dtctesterDSN: testUser Name: saPassword is assumed to be NULL.Connecting to the databasetablename= #dtc7488Creating Temp Table for Testing: #dtc7488Warning: No Columns in Result Set From Executing: 'create table #dtc7488 (ival int)'Initializing DTCBeginning DTC TransactionEnlisting Connection in TransactionExecuting SQL Statement in DTC TransactionInserting into Temp...insert into #dtc7488 values (1)Warning: No Columns in Result Set From Executing: 'insert into #dtc7488 values (1) 'Verifying Insert into Temp...select * from #dtc7488 (should be 1): 1Press enter to commit transaction.Committing DTC TransactionReleasing DTC Interface PointersSuccessfully Released pTransaction Pointer.Disconnecting from Database and Cleaning up Handles					

建议为打开的端口 dtc

输入端口端口的用途
打开 135RPC EPM (终结点映射器)
打开 1433当使用 TCP/IP 的 TDS SQL 通讯
打开 1434SQL 2000 集成的安全性
打开 5100-5200MSDTC [动态由 EPM 指派一个端口]
参考
有关更多的信息请单击下面文章编号,以查看 Microsoft 知识库中相应的文章:
191168信息: 错误 '-2147168246 (8004d00a) 未能登记上调用对象的事务
附加的信息请参阅以下 Microsoft 网站上白皮书:
与防火墙使用分布式的 COM
http://www.microsoft.com/com/wpaper/dcomfw.asp

警告:本文已自动翻译

属性

文章 ID:293799 - 上次审阅时间:09/07/2004 15:15:35 - 修订版本: 2.5

Microsoft Windows DNA

  • kbmt kbdownload kbdownload kbdcom kbhowto KB293799 KbMtzh
反馈