首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >处理损坏msdb ldf文件的选项

处理损坏msdb ldf文件的选项
EN

Server Fault用户
提问于 2010-07-18 23:23:35
回答 2查看 1K关注 0票数 0

规范:我们在事务复制中使用Server 2005。

我们的MSDB .LDF文件最近已经损坏,导致MSDB被标记为“可疑”。我们在线阅读了大量内容,并了解到要解决这个问题,要么必须从备份恢复,要么必须从sql安装脚本重新构建MSDB。

由于没有备份,所以我们尝试运行安装脚本instmsdb.sql (在使用-T3806 -m -c启动参数和所有这些jazz运行sql服务器服务后删除msdb )。

这是成功的,所以我计划重建发行版db和发布服务器,然后重新初始化订阅服务器。但是,当我试图访问菜单中有关复制的任何内容时,会发现msdb中缺少表的错误。其中一个具体错误是“无效对象msdb.dbo.MSdistributordbs”。

因此,我认为系统处于中间状态--创建了分发系统表,但msdb中不存在所需的特定于复制的表和sps。

因此,我的问题是:

  1. 需要运行哪些脚本或存储过程,以便msdb可以复制,和/或,
  2. 如何手动删除发布者和其他与复制相关的对象,以便重新创建所有复制内容?
  3. 有没有可能在没有ldf文件的情况下加载msdb?

编辑:我还试过一件事--我在订阅服务器上启用了复制,将msdb mdf和日志文件复制到'bad‘服务器,并试图附加这些文件。但是,我忘记了数据库是不兼容的,因为发布服务器是sql server 2005,子服务器是sql server 2008。叹一口气。这可能在其他方面起作用(至少我可以删除和重新创建复制)。

(顺便提一句,我们负责db备份脚本的“sysadmin”没有备份任何系统dbs。这一情况已得到纠正。(叹息)。

EN

回答 2

Server Fault用户

发布于 2010-07-19 16:13:41

我已经很久没有使用复制了(也许您已经尝试过了),但是您不能使用向导禁用发布服务器和分发数据库,然后重新启用它们吗?

票数 0
EN

Server Fault用户

发布于 2010-07-19 16:37:51

您可以只使用mdf附加数据库。是一个链接到存储它的系统proc,它还包含一个对最新创建数据库语句的引用,该语句已经取代了这个proc。我不知道这将如何运行一个系统数据库。

另一个选项是文档,它解释了如何使用系统存储的proc调用删除复制。我不得不用它一次来修复一个复制的数据库,使它的短裤扭动一下。我不记得细节了,但是management不允许您删除复制,因为它不是安装程序,而且您无法创建发布,因为它已经存在。

更新:您是否尝试使用sp_dropdistributor proc。我会尝试这样做,然后尝试重新创建/配置发布服务器和分发服务器。

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

https://serverfault.com/questions/161644

复制
相关文章

相似问题

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