问题标签 [msdtc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3547 浏览

.net - Active Directory 事务感知吗?

简单的问题,但我在任何地方都找不到答案:Active Directory 事务感知吗?

换句话说,是否会回滚以下更改(因为我没有调用scope.Complete()):

如果没有,是否有可能以某种方式启用它?现在我有执行数据库更新和相应的 AD 更新的代码,如果 AD 更新以某种方式失败,我有补偿逻辑。该解决方案远非最佳。

亲切的问候,罗纳德·维尔登伯格

0 投票
3 回答
22675 浏览

sql-server - MSDTC 的问题 - 远程事务

我们正在将我们的 SQL Server 移动到它自己的机器上,但我在通过 MSDTC 获取事务时遇到问题。

这是 ASP.Net 为我生成的错误消息:

事务管理器已禁用对远程/网络事务的支持

我已经尝试在谷歌上搜索这个,但除了如何为 Windows 2003 解决这个问题的指南外,没有找到更多的东西。

谁能告诉我如何在 Windows 2008 上解决这个问题?(SqlServer + IIS 框都在运行 Win 2k8)。

谢谢!

0 投票
3 回答
5817 浏览

tsql - 分离数据库/脱机失败

我目前正在分离生产服务器上的开发数据库。由于这是生产服务器,我不想重新启动 sql 服务。那是最坏的情况。

显然,我尝试通过 SSMS 将其分离。告诉我有一个活动连接,我断开了它。第二次分离时,它告诉我这是不可能的,因为它正在使用中。

我尝试了 EXEC sp_detach_db'DB',但没有成功。

我尝试让数据库脱机。当我感到无聊并将其关闭时,它运行了大约 15 分钟。

无论如何,我尝试了一切......我确保使用 SSMS 分离数据库中的连接指示器杀死所有连接。

以下返回 0 个结果:

使用主 SELECT * FROM sys.sysprocesses WHERE dbid = DB_ID('DB')

以下内容现在运行了 18 分钟:

ALTER DATABASE DB SET OFFLINE WITH ROLLBACK IMMEDIATE

在所有这些过程中,我确实定期重新启动 SMSS,以确保 SSMS 不是通过隐形锁定某些东西的罪魁祸首。

没有办法暴力破解吗?数据库模式是我非常喜欢的东西,但数据是可消耗的。

希望有某种快速修复?:)

DBA 今晚将尝试重置该过程,但我想知道解决方法以防万一。

谢谢!

ps:我正在使用DTC ...所以也许这可以解释为什么我的数据库突然被锁定了?

编辑:

我现在正在执行以下操作,这会导致最后一部分无限执行。第一个查询甚至返回 0,所以我想杀死用户甚至都不重要。

使用 [主] 去

SELECT * FROM sys.sysprocesses WHERE dbid = DB_ID('Database')

声明 @return_value int

EXEC @return_value = [dbo].[usp_KillUsers] @p_DBName = '数据库'

选择“返回值”=@return_value

ALTER DATABASE Database SET OFFLINE WITH ROLLBACK IMMEDIATE

0 投票
3 回答
3589 浏览

c# - 为什么我无法从远程公共事务队列接收消息?

我在 Windows Server 2008 上使用 C#,我想从同一域中另一台计算机上的公共事务队列接收消息。错误如下所示:

我试过 DTCPing,它在一个方向上成功但在另一个方向上失败了。以下是日志的相关部分:

有谁知道为什么这可能会失败?已为 MSDTC 打开 Windows 防火墙。很难找到有关 Windows 2008 和 MSMQ 的大量信息。

编辑:队列名称为 FormatName:DIRECT=OS:dev-msmq1\getmap 和 FormatName:DIRECT=OS:dev-msmq1\logevent。它们是公共的、事务性的队列,每个人都拥有查看/接收它们的权限。我的代码的相关部分如下:

谢谢

0 投票
8 回答
34925 浏览

windows - 我从哪里获得 tracefmt.exe?以及如何读取我的 MSDTC 痕迹?

为了打开 MSDTC 跟踪,我遵循了 MS 的知识库文章。不幸的是,这很难理解,因为它没有假设读者有一个非常合理和明显的期望,特别是“我如何阅读这个二进制日志文件?” 我也从 MSDN阅读了这个页面,在那里我发现我无法读取日志文件,因为我缺少一些名为 的可执行文件tracefmt.exe,而且我显然是唯一一个遇到这个问题的人。

因此我的问题是:为什么我没有 tracefmt.exe,我从哪里得到它?或者,直截了当:如何阅读我的 MSDTC 跟踪日志?

0 投票
1 回答
1206 浏览

sql-server - 为什么 SQL Server 中的分布式事务不支持快照隔离

问题在标题中。我只是想了解为什么不支持此功能?

只是为了澄清这是 MS Sql Server 2005 / 2008。

0 投票
2 回答
1070 浏览

wcf - 是否应该为预言机交易启用网络 DTC

我在 windows sever 2003 机器上托管了一个基于 WCF 的 Web 服务。数据库是 solaris 上的 Oracle 10G。Web 服务广泛使用 transactionscope,并在某些地方使用 ado.net 事务。大多数事务只涉及一种资源(多个 oracle 存储过程调用)。其中一些是两种资源(MSMQ 和 oracle 存储过程)。鉴于此,必须在 Windows 机器上启用网络 DTC。它已经启动了 MSDTC 服务。没有从 Web 服务客户端到 Web 服务的事务流。它似乎在没有启用网络 DTC 的情况下工作,但我想确定。

该平台是 .Net 2.0 SP1 + 3.0(用于 WCF)。Oracle驱动是ODP.Net v11.1.0.6

0 投票
1 回答
1684 浏览

c# - 启用 MSDTC 的安全风险

默认情况下禁用 MSDTC(Windows 2003 - 更高版本),我希望为我正在开发的需要来自 .Net C# 的分布式事务的应用程序启用它。

我不相信启用它会出现任何安全问题,但是 SO 是否知道启用 DTC 的任何安全问题?

干杯

奥利

0 投票
5 回答
2138 浏览

c# - 任何使用事务性 NTFS (TxF) 的真实企业级体验?

背景:

我知道有关 Transactional NTFS (TxF)的SO question和描述如何使用它这篇文章,但我正在寻找具有大量blob 数据(例如文档和/或照片)需要以事务方式保存一次并多次读取

  • 我们预计每天会写入数万份文件,每小时读取数万份文件。
  • 我们可以将索引存储在文件系统或 SQL Server 中,但必须能够将其扩展到多个盒子。
  • 我们必须保留轻松备份和恢复数据以进行灾难恢复的能力。

问题:

  • 任何使用事务性 NTFS (TxF) 的真实企业级体验?

相关问题:

  • 任何人都尝试过使用 TxF 的分布式事务,其中同一个文件一次提交到两个镜像服务器?
  • 有人尝试过使用文件系统和数据库进行分布式事务吗?
  • 您可以分享任何性能问题/可靠性问题/性能数据吗?在交易成为问题之前,有没有人做过这种规模的事情?

编辑:为了更清楚,我研究了其他技术,包括 SQL Server 2008 的新 FILESTREAM 数据类型,但这个问题专门针对事务文件系统

更多资源:

0 投票
2 回答
25940 浏览

sql-server - 为什么 SSIS 运行时无法启动分布式事务?

在为 SQL Server 2008 创建 SSIS 包时,我遇到以下错误:

错误:由于错误 0x8004D01B“事务管理器不可用”,SSIS 运行时无法启动分布式事务。DTC 事务无法启动。这可能是因为 MSDTC 服务未运行。

我正在我的机器上本地创建和运行包,但数据库位于运行 Windows Server 2008 的服务器上,该服务器不在域中。

我已确保 DTC 服务在本地和服务器上都启动,并且添加了在 Windows Vista 防火墙中预定义的防火墙例外。

为什么 SSIS 运行时无法启动分布式事务?