首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >事务复制创建正在休眠的修复索引,但阻塞其他进程

事务复制创建正在休眠的修复索引,但阻塞其他进程
EN

Database Administration用户
提问于 2013-04-29 15:36:52
回答 2查看 571关注 0票数 5

我刚刚将我的ERP数据库服务器从server 2000迁移到了Server 2008 R2 (都是企业版),迁移进行得相当顺利。

但是,现在我正在尝试重新创建从ERP到报告环境的复制,我有两个出版物正在尝试创建一系列MSFixupNonUniqueIndex_{{datetimestamp}}非唯一索引。创建这些索引的进程都处于休眠状态,但它们阻塞了其他最终用户正在运行的SQL进程。

是什么导致了这个修正索引的创建,我能避免它吗?

  • 使用sp_whoisactive,索引创建任务没有wait_info
  • 我没有在报告环境中删除复制的数据库。
  • "Reporting环境“也是Server 2008 R2企业。
  • 这是2008年的R2到2008年的R2复制。
  • sysprocesses显示了试图创建索引的spid阻塞的两个procs。spid本身有一个waittype of 0x0000和一个lastwaittype of MISCELLANEOUS
  • sys.locks显示有777个锁:7个意图,761个独占锁,6个共享锁,2个模式模式,1个模式稳定性。资源有:1 ALLOCATION_UNIT,9 OBJECT,3 DATABASE,2 METADATA,6 77 PAGE,11 KEY,1 HOBT,73 EXTENT
  • select * from sysprocesses where open_tran > 0确实使用一个打开的事务返回spid。
  • DBCC OPENTRAN没有打开的事务。
  • MAXDOP未配置
EN

回答 2

Database Administration用户

回答已采纳

发布于 2013-04-29 15:40:09

如果复制是自动创建索引,那么您可能无法避免它。这样做的唯一方法可能是在订阅服务器上创建匹配索引。

尝试使用更详细的日志记录级别从命令行运行合并代理,并查看它返回了哪些信息。这可能是与一些没有作为错误返回的东西发生碰撞。

票数 1
EN

Database Administration用户

发布于 2017-07-19 18:46:04

确保订阅数据库是新数据库。如果使用新数据库进行订阅,问题将得到解决。这对我有用。

票数 0
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/41163

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档