MS SQL Server 2008 master数据库损坏故障解决
2011-01-26 14:36
501 查看
本地电脑上安装的MS SQL Server 2008 R2可能因为硬盘原因,导致SQL Server服务无法启动,在事件查看器中看到若干错误和信息,其中有两条提示可能master损坏:
1、错误:传递给数据库 'master' 中的日志扫描操作的日志扫描号 (184:416:1) 无效。此错误可能指示数据损坏,或者日志文件(.ldf)与数据文件(.mdf)不匹配。如果此错误是在复制期间出现的,请重新创建发布。否则,如果该问题导致启动期间出错,请从备份还原。
2、信息:无法恢复 master 数据库。SQL Server 无法运行。请利用完整备份还原 master 数据库,修复它,或者重新生成它。有关如何重新生成 master 数据库的详细信息,请参阅 SQL Server 联机丛书。
重新安装SQL Server问题不难解决,但太耗时。google到一个快捷的恢复方法,分享如下:
1、复制model.mdf、mastlog.ldf、model.mdf、modellog.ldf、msdbdata.mdf、msdblog.ldf文件。
从
X:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Binn\Templates
至
X:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA
注:以上“X:\Program Files\Microsoft SQL Server”为SQL Server的安装目录。以下的“C:\Program Files\Microsoft SQL Server”为系统盘下的目录
2、定位并执行安装命令
首先找到安装命令:
C:\Program Files\Microsoft SQL Server\100\Setup Bootstrap\Release\setup.exe
如果只是Windows身份验证模式,只需要如下语法即可:
setup /ACTION=REBUILDDATABASE /QUIET /INSTANCENAME=<instance name> /SQLSYSADMINACCOUNTS=<accounts>
如果是复合身份验证模式,则需要使用/SAPWD参数提供sa的密码:
setup /ACTION=REBUILDDATABASE /QUIET /INSTANCENAME=<instance name> /SQLSYSADMINACCOUNTS=<accounts> /SAPWD=<sa password>
我安装时设置的是复合认证模式,SQL Server系统管理员帐号是administrators组,sa密码是123456。并且就一个默认实例:MSSQLSERVER。
所以在命令行执行如下命令:
setup /ACTION=REBUILDDATABASE /QUIET /INSTANCENAME=MSSQLSERVER /SQLSYSADMINACCOUNTS=administrators /SAPWD=123456
执行完毕后没有任何提示信息(不管成功与否),但是可以马上在C:\Program Files\Microsoft SQL Server\100\Setup Bootstrap\Log\Summary.txt中查看安装日志。
最后,在Sql Server Configuration Manager中启动SQL Server服务成功。
参考资料: http://blogs.msdn.com/b/psssql/archive/2008/08/29/how-to-rebuild-system-databases-in-sql-server-2008.aspx
1、错误:传递给数据库 'master' 中的日志扫描操作的日志扫描号 (184:416:1) 无效。此错误可能指示数据损坏,或者日志文件(.ldf)与数据文件(.mdf)不匹配。如果此错误是在复制期间出现的,请重新创建发布。否则,如果该问题导致启动期间出错,请从备份还原。
2、信息:无法恢复 master 数据库。SQL Server 无法运行。请利用完整备份还原 master 数据库,修复它,或者重新生成它。有关如何重新生成 master 数据库的详细信息,请参阅 SQL Server 联机丛书。
重新安装SQL Server问题不难解决,但太耗时。google到一个快捷的恢复方法,分享如下:
1、复制model.mdf、mastlog.ldf、model.mdf、modellog.ldf、msdbdata.mdf、msdblog.ldf文件。
从
X:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Binn\Templates
至
X:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA
注:以上“X:\Program Files\Microsoft SQL Server”为SQL Server的安装目录。以下的“C:\Program Files\Microsoft SQL Server”为系统盘下的目录
2、定位并执行安装命令
首先找到安装命令:
C:\Program Files\Microsoft SQL Server\100\Setup Bootstrap\Release\setup.exe
如果只是Windows身份验证模式,只需要如下语法即可:
setup /ACTION=REBUILDDATABASE /QUIET /INSTANCENAME=<instance name> /SQLSYSADMINACCOUNTS=<accounts>
如果是复合身份验证模式,则需要使用/SAPWD参数提供sa的密码:
setup /ACTION=REBUILDDATABASE /QUIET /INSTANCENAME=<instance name> /SQLSYSADMINACCOUNTS=<accounts> /SAPWD=<sa password>
我安装时设置的是复合认证模式,SQL Server系统管理员帐号是administrators组,sa密码是123456。并且就一个默认实例:MSSQLSERVER。
所以在命令行执行如下命令:
setup /ACTION=REBUILDDATABASE /QUIET /INSTANCENAME=MSSQLSERVER /SQLSYSADMINACCOUNTS=administrators /SAPWD=123456
执行完毕后没有任何提示信息(不管成功与否),但是可以马上在C:\Program Files\Microsoft SQL Server\100\Setup Bootstrap\Log\Summary.txt中查看安装日志。
最后,在Sql Server Configuration Manager中启动SQL Server服务成功。
参考资料: http://blogs.msdn.com/b/psssql/archive/2008/08/29/how-to-rebuild-system-databases-in-sql-server-2008.aspx
相关文章推荐
- MS SQL Server 2008 master数据库损坏故障解决
- MS SQL Server 2008 master数据库损坏故障解决
- MS SQL Server 2000版在windows server 2003企业版系统上运行时造成数据库suspect的解决方法
- DBCC大全集之(适用版本MS SQLServer 2008 R2)----DBCC DBREINDEX对指定数据库中的表重新生成一个或多个索引
- 安装MS SQL Server 2008 “性能计数器注册表配置单元一致性”失败的解决办法
- DBCC大全集之(适用版本MS SQLServer 2008 R2)----DBCC CHECKCONSTRAINTS检查当前数据库中指定表上的指定约束或所有约束的完整性
- MS sqlserver 2008数据库转换成2000版本的方法
- MS SQL Server 2000版在windows server 2003企业版系统上运行时造成数据库suspect的解决方法
- DBCC大全集之(适用版本MS SQLServer 2008 R2)----DBCC CHECKCONSTRAINTS检查当前数据库中指定表上的指定约束或所有约束的完整性
- Visual Studio 2008不能创建数据库连接出现:未能加载文件或程序集“Microsoft.SqlServer.Management.Sdk.Sfc, Version=10.0.0.0, Culture=neutral,PublicKeyToken=89845dcd8080cc91”或它的一个依赖项。系统找不到指定的文件的解决办法
- 安装MS SQL Server 2008 “性能计数器注册表配置单元一致性”失败的解决办法
- MS SQL Server 无法启动故障解决
- MS SQLServer 2008数据库处于SUSPECT情况下的处理
- MS SQL Server MSDB等系统数据库损坏的修复
- MS SQL Server 2000 数据库使用备份还原造成dbo登录名丢失解决法(转)
- MS SQL SERVER 2008 “阻止保存要求重新创建表的更改” 解决方法
- MS SQL Server 数据库修复 未处理修复语句。数据库需处于单用户模式下。解决
- Microsoft SQL Server 2008 R2附加数据库报错5120解决办法
- Visual Studio 2008不能创建数据库连接出现:未能加载文件或程序集“Microsoft.SqlServer.Management.Sdk.Sfc, Version=10.0.0.0, Culture=neutral,PublicKeyToken=89845dcd8080cc91”或它的一个依赖项。系统找不到指定的文件的解决办法
- MS SQL SERVER 2008 “阻止保存要求重新创建表的更改” 解决方法