2010-04-30 90 views
0

我已经继承了此SQL Server,我们将数据放在数据库(DB-A)的表(Call TableA)中。我可以在同一台服务器(DB-B)上的另一个数据库中看到tableA立即获取相同的数据。SQL Server复制问题

任何想法如何实现?我试图看到踪迹,但迄今没有运气。任何人有一个想法?

在这个阶段我不确定它的复制。这是一个猜测

回答

1

它可能是复制,也可能是正在移动数据的源表上的触发器。

+0

探查器未能捕获来自数据库A的存储过程的写入。因此,探查器闲置,我看到表得到更新。找到原因。感谢您的帮助 – schar 2010-04-30 17:15:04

1

也许这是事务复制?你应该能够去复制是否有订阅者或发布者。 无论是或者你有链接服务器,并且触发器正在复制数据。

+0

这两个数据库在同一台机器上。我没有看到写入另一个数据库的触发器。任何方式我可以监视写入到一个特定的表? – schar 2010-04-30 15:10:24

+0

您可以创建一个分析器跟踪并在目标数据库上对其进行过滤。如果将结果输出到表中,则可以对结果运行sql查询以至少查看写入发生的时间。 对于复制...您使用的是哪个版本的sql server?在2k5及更高版本中,服务器节点下有一个复制文件夹。打开并展开寻找出版物或订阅的任何节点。 – Jeremy 2010-04-30 16:42:22

+0

发现数据库A的存储过程也正在写入数据库B.分析器从来没有从存储过程调用中捕获该写入语句。 感谢您的建议 – schar 2010-04-30 17:14:15

1

这很可能是通过使用同义词或跨数据库视图发生的。检查另一个数据库上的“表”是否真的是一个表。如果它是一张表,那么他们已经在两个数据库之间建立了事务复制。

select type_desc from sys.objects where name = 'name_on_database_b' 
+0

如何检查它们是否设置为事务复制? – schar 2010-04-30 15:16:58

+0

探查器无法捕获来自数据库A的存储过程的写入。因此,探查器闲置,我看到表正在更新。找到原因。谢谢您的帮助 – schar 2010-04-30 17:15:44