知识部分
系统数据库: SQL Server 2008 R2 默认包括四个系统数据库, 分别是 master,model,msdb,tempdb. 其中 master 数据库用以记录所有系统级别的信息, 所有的登陆账户和系统配置设置. 同时记录所有其他的数据库信息, 其中包括数据库文件的位置, 同时还记录所有 SQL Server 的初始化信息. 如果 master 数据库出现问题, 将导致整个数据库的崩溃, 无法使用, 对企业造成巨大的损失. 所以做好 master 数据库的备份是作为一名合格 DBA 必须做的工作.
操作部分
1, 首先我们创建一个用以实验的数据库 "database", 在该数据库中建立一个表 "student" 用于测试是否还原成功.
2, 并新建一个登录名
3, 第一步, 我们找到 "服务器对象"-"备份设备"-"新建备份设备"
4, 为备份设备起名
5, 然后对新建的 "备份设备" 右键 -"备份数据库"
6, 选择备份 "master"
7, 完成后我们开始准备模拟数据库的 master 出现故障. 首先停掉 SQL Server(MSSQLSERVER) 服务.
8, 然后找到下图路径下的 master 数据库将其删除.
9, 删除后再去登陆 SSMS 工具, 会出现下图错误. 这时候数据库就无法使用了.
10, 恢复部分. 我们插入 SQL Server 2008 R2 光盘.
11, 运行 cmd, 输入下图中的命令 - 回车完成
12, 打开服务管理 - 找到 SQL Server(MSSQLSERVER) 服务, 编辑其属性. 在启动参数中输入 "-c -m", 启动服务. 再次使用 SSMS 工具登陆 SQLServer 会进入单用户模式.
13, 注意进入单用户模式要在服务器名称这里输入 "." .
14, 找到备份文件的所在位置.
15, 新建查询中输入一下语句并执行以恢复 master 数据库
16, 再次找到这个服务, 启动参数留空, 重新启动服务
17, 然后重新登陆 SSMS, 发现数据库可以重新使用了.
来源: http://www.linuxidc.com/Linux/2018-11/155174.htm