本文参考自微软的Microsoft SQL文档用以记录学习
Sql Server系统数据库的作用
SQL Server 维护一组系统级数据库(称为“系统数据库” ),这些数据库对于服务器实例的运行至关重要。 每次进行大量更新后,都必须备份多个系统数据库。 必须备份的系统数据库包括 msdb、 master和 model。 如果有任何数据库在服务器实例上使用了复制,则还必须备份 distribution 系统数据库。 备份这些系统数据库,就可以在发生系统故障(例如硬盘丢失)时还原和恢复 SQL Server 系统。
下表概述了所有的系统数据库。
对还原系统数据库的限制
只能从在服务器实例当前运行的 SQL Server 版本上创建的备份中还原系统数据库。 例如,若要还原在 SQL Server 2012 (11.x) SP1 上运行的服务器实例上的系统数据库,则必须使用在服务器实例升级到 SQL Server 2012 (11.x) SP1 之后所创建的数据库备份。
若要还原任何数据库,必须运行 SQL Server 实例。 只有在 SQL Server master 数据库可供访问且至少部分可用时,才能启动 实例。 如果 master 数据库不可用,则可以通过下列两种方式之一将该数据库返回到可用状态:
从当前数据库备份还原 master 。
如果你可以启动服务器实例,则应该能够从完整数据库备份还原 master 。
完全重新生成 master 。
如果由于 master 严重损坏而无法启动 SQL Server,则必须重新生成 master。 有关详细信息,请参阅 [重新生成系统数据库](https://docs.microsoft.com/zh-cn/sql/relational-databases/databases/rebuild-system-databases?view=sql-server-linux-2017)。