还原 master 数据库时的注意事项
如果创建数据库备份后更改了 master 数据库,则那些更改在还原备份时将丢失。若要恢复这些更改,必须执行可以恢复已丢失更改的语句。例如,如果自执行备份后创建了一些 SQL Server 登录名,则这些登录在还原 master 数据库后会丢失。必须使用 SQL Server Management Studio 或创建登录名时使用的原始脚本,重新创建这些登录名。
只能从对 SQL Server 2008 实例创建的备份中还原 master 数据库。
注意 |
---|
以前与丢失的登录相关的所有数据库用户都将成为孤立用户,也就是说他们将不能访问数据库。有关详细信息,请参阅孤立用户故障排除。 |
还原 master 数据库后,SQL Server 实例将自动停止。如果需要进一步修复并希望防止多重连接到服务器,应以单用户模式启动服务器。否则,服务器会以正常方式重新启动。如果决定以单用户模式重新启动服务器,应首先停止所有 SQL Server 服务(服务器实例本身除外),并停止所有 SQL Server 实用工具(如 SQL Server 代理)。停止服务和实用工具可以防止它们尝试访问服务器实例。
在创建备份后重新构造所做的更改
如果还原 master 数据库备份后创建了用户数据库,则只有执行下列操作之一才能访问该用户数据库:
附加数据库。我们建议使用此方法。
附加数据库要求所有数据库文件均可用。我们建议指定日志文件和数据文件,而不是尝试使用附加操作重新生成一个或多个日志文件。
有关如何附加数据库的信息,请参阅如何附加数据库 (SQL Server Management Studio) 或 CREATE DATABASE (Transact-SQL)。
从一个或多个备份还原数据库。
仅在数据库的数据文件或事务日志文件不再存在或不可用时,才能选择还原数据库。
附加或还原数据库将重新创建必要的系统表项,数据库变为可用并且其状态与 master 数据库还原之前的状态相同。
如果备份 master 数据库后删除了某些对象、登录名或数据库,则必须从 master 数据库中删除这些对象、登录名和数据库。
重要提示 |
---|
如果有些数据库已不存在,但在还原的 master 数据库备份中引用了那些数据库,则 SQL Server 可能会由于找不到那些数据库而在启动时报告错误。还原备份后应删除那些数据库。 |
还原 master 数据库且重新应用任何更改之后,应立即备份 master 数据库。
以单用户模式启动 SQL Server 实例
如何启动 SQL Server 实例 (sqlservr.exe)。
还原 master 数据库
附加数据库