![断电后无法重建 MS SQL Server 2005 Express 上的主数据库](https://linux22.com/image/515285/%E6%96%AD%E7%94%B5%E5%90%8E%E6%97%A0%E6%B3%95%E9%87%8D%E5%BB%BA%20MS%20SQL%20Server%202005%20Express%20%E4%B8%8A%E7%9A%84%E4%B8%BB%E6%95%B0%E6%8D%AE%E5%BA%93.png)
有一个电力流失在我们的服务器上,我无法启动 SQL 服务,因为主数据库已损坏(如日志所述)。
我发现许多文章建议使用可选参数运行setup.exe:
这是我做的:
- 我已经
SQLEXPR32.EXE
从 MS 页面下载并运行了它。
第一个问题是,它提取了所有安装文件并启动了默认安装程序。(这对我来说没用,因为我需要这些参数)。如果我取消它,所有提取的文件都会消失。这就是为什么我决定将提取的文件复制到某个地方,然后取消默认安装。
- 现在我尝试从提取中运行setup.exe:
setup.exe /qb INSTANCENAME=MSSQLSERVER REINSTALL=SQL_Engine REBUILDDATABASE=1 SAPWD=xxxxx
它询问我是否要重写系统数据库,这是我所需要的,但是在安装时我收到此错误:
找不到产品 Microsoft SQL Server 2005 Express Edition 的安装包。请使用安装包“SqlRun_SQL.msi”的有效副本重试安装
然后它尝试安装某些东西,并显示:无法安装,因为相同的实例名称已经存在。但我不想安装新实例。
知道如何解决这个问题吗?
答案1
好吧。。我是这样做的:我在那台机器上安装了一个新的 SQL 实例,并用新的 SQL 实例重写了旧的损坏的 master.mdf。这样我就可以启动服务器了。然后我附加了 myDatabase.mdf。。缺点是我有 master.dbf'来自工厂/默认'