加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

SqlServer系统数据库还原(一)master 数据库还原模拟测试

发布时间:2020-12-12 12:42:26 所属栏目:MsSql教程 来源:网络整理
导读:master 数据库记录什么信息? master 数据库记录 SQL Server 系统的所有系统级信息。 这包括实例范围的元数据(例如登录帐户)、端点、链接服务器和系统配置设置。 在 SQL Server 中,系统对象不再存储在 master 数据库中,而是存储在 Resource 数据库中。

master 数据库记录什么信息?

master 数据库记录 SQL Server系统的所有系统级信息。这包括实例范围的元数据(例如登录帐户)、端点、链接服务器和系统配置设置。 SQL Server中,系统对象不再存储在 master数据库中,而是存储在 Resource数据库中。此外,master数据库还记录了所有其他数据库的存在、数据库文件的位置以及 SQL Server的初始化信息。因此,如果 master数据库不可用,则 SQL Server无法启动。(摘)

更多参考:master数据库



master 数据库在什么时候备份?

1.创建删除用户数据库

2.添加删除文件或文件组

3.添加登录或添加登录相关的信息

4.更改服务器范围的配置和数据库配置选项

5.创建删除逻辑备份设备

6.配置用于分布查询或远程调用的服务器,如链接服务器或远程登录

(不过这些都不是重要的,只要数据库在运行,以上的信息都可以手动重新配置。Master数据库比较小,占用很小的空间,可每周备份一次。如果频繁改变数据库元数据,可按天备份)



master 数据库在什么时候还原?

1.自然灾害或人为不小心致硬盘损坏

2.硬件老化损坏

2.master相关数据传输过程损坏

3.病毒入侵文件损坏

(总的来说,就是数据库都打不开或者服务启动不了的时候,确定在还原master数据库)

更多参考:还原 master数据库 (Transact-SQL)




master 数据库还原(测试)


?

模拟破坏!

1 先备份系统数据库!

?

?

2 SqlServer服务停止

?

?

3 用文本编辑文件master.mdf(一般都不会很大),任意增删字符破坏!

?

?

4 现在启动SqlServer服务,启动不了了!

?

?

5 启动不了,先看看启动的参数路径正确了没有?一般都配置3个启动参数(dataerrorlog

-dD:Microsoft SQLServerMSSQL10_50.MSSQLSERVERMSSQLDATAmaster.mdf;

-eD:Microsoft SQLServerMSSQL10_50.MSSQLSERVERMSSQLLogERRORLOG;

-lD:Microsoft SQL ServerMSSQL10_50.MSSQLSERVERMSSQLDATAmastlog.ldf

?

?

6再看系统错误报告,系统已经提示还原master数据库或重新安装数据库了。如果确定上面的启动参数正确了,那就按照系统建议来吧。但是重装数据库,很多相关配置都初始化,丢失很多数据,非常不好!只能先还原master数据库了,不行再卸载重装SqlServer实例。

?

?

7 现在开始吧!但是,服务都启动不了!不能还原!为了能保证数据库正常启动,在另一台系统版本相同的计算机中,安装一个版本相同SqlServer产品。注意,安装的系统数据库路径也要相同!安装完成后,将其服务停止,拷贝系统数据库master替换当前计算机中损坏数据库的文件。发现服务能启动了。

?


8 登录之后发现什么都没有,master的记录信息全都已经初始化了!如果开启代理查看,msdb记录的代理信息还在。要找回以前的信息,只能还原master数据库了。

?

?

9 还原master数据库,就不能再打开SSMS用界面来操作了,现在用命令行打开。

?

A 单用户启动SqlServer服务(win7启动错误,请以管理员身份运行)

netstart MSSQLSERVER /m

?


B 受信连接SqlServer服务器实例

sqlcmd -E -S serverName

?

C 连接后还原master数据库(成功后SqlServer服务自动停止)

restore database master from disk = 'c:master.bak'

go

?

?

10 好了,现在启动服务打开数据库,master记录的信息找着了。原来我的3个数据库本地做点对点测试的也能正常运行了!




至此,数据库已经正常运行。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读