Evi*_*lDr 4 sql-server restore sql-server-2012 system-databases
我们有一个每 24 小时运行一次的第三方服务器备份工具,它备份所有内容(文件和数据库,为裸机恢复做准备)。经过大量调查,发现该工具使用了非copy_only备份,从而破坏了系统数据库和我们自己的日志链。
(我一直在研究是否应该备份系统数据库,由于他们持有的关于 SQL Server 一般的数据(例如用户、代理作业等),共识通常是肯定的。这不是关于他们的内容,但如果由于我描述的情况而在恢复后丢失会发生什么)。
为了阻止这种犯罪,我禁用了执行数据库备份的工具,所以现在它只执行文件备份(MDF/LDF 文件除外)。然后我安排 SQL 代理每小时运行一次备份,然后将它们发送到我的私有云。
如果服务器完全故障,并且需要裸机备份,我希望在 SQL 开始备份时数据库不会在那里,因为它们没有被工具备份/恢复(尽管我安全地拥有它们备份)。
此时实际发生了什么?SQL Server 是否会重新创建系统数据库,然后我可以将其还原?或者,它是否只是拒绝启动而我会遇到麻烦?
不。
还原系统数据库的过程在以下 Microsoft 文章中进行了说明:
参考:重建系统数据库(SQL Server 2012)
重建系统数据库:
安装程序 /QUIET /ACTION=REBUILDDATABASE /INSTANCENAME=InstanceName /SQLSYSADMINACCOUNTS=accounts [ /SAPWD= StrongPassword ] [ /SQLCOLLATION=CollationName]将相关信息替换为您的实例的值。
通过查阅安装摘要文件验证安装是否成功:
C:\Program Files\Microsoft SQL Server\110\Setup Bootstrap\Logs
Run Code Online (Sandbox Code Playgroud)恢复系统数据库的最新备份:master, msdb, ( model):
master数据库时,请使用-m参数从 DOS 提示符启动 SQL Server 实例。还原msdb数据库时,使用 Trace Flag 3608 启动 SQL Server 实例:
防止 SQL Server 自动启动和恢复除 master 数据库之外的任何数据库。数据库将在访问时启动和恢复。某些功能(例如快照隔离和读取提交的快照)可能不起作用。用于移动系统数据库和移动用户数据库。请勿在正常操作期间使用。
重建ressource数据库:
恢复您的用户数据库
重要通知
如果您从未执行过还原,您将永远不会知道您的备份(过程)是否有效。测试并再次测试。