备份和还原 第三篇:master 数据库的备份和还原
发布日期:2021-05-09 04:54:16 浏览次数:12 分类:博客文章

本文共 1201 字,大约阅读时间需要 4 分钟。

在SQL Server 中,master 数据库记录系统级别的元数据,例如,logon accounts, endpoints, linked servers, and system configuration settings,同时,master 数据库记录其他数据库及其文件的位置,因此,在启动SQL Server实例时,master数据库必须最先启动。master 数据库是如此重要,必须频繁地备份master数据库。Only full database backups of master can be created.

一,备份master数据库

master数据库只能做full backup,不能做差异备份和事务日志备份,原因是master只能处于Recovered 状态,不能处于NoRecovery(recovering)状态。

backup database [master]to disk = 'D:\TestDBBackupFolder\master_1.bak' --specify new backup filewithcompression,format,init,skip,stats=5

二,还原master数据库

master数据库必须在单用户模式下还原,因此,在还原master数据之前,必须先停止SQL Server的所有服务(Service),包括MSSQLServer、Agent、Broser、Fulltext等,避免其竞争访问MSSQLService,然后,以管理员打开命令行;

step1,使用命令行net start,以single user 模式启动SQL Server实例的Service:MSSQLServer

参数/m“sqlcmd”:表示以单用户(Single User)模式启动Service,并且,只允许sqlcmd客户端访问service;

net start MSSQLSERVER /m"sqlcmd"

step2,使用sqlcmd登录到SQL Server实例

-E:指定sqlcmd以信任连接(trusted connection)方式登录Service,参数-E是默认的;

-S:指定sqlcmd连接的Server-Name

sqlcmd -E -S server-name

step3,使用sqlcmd还原master数据库,由于SQL Server实例中已经存在master数据库,必须指定replace选项,将原有的master数据库替换掉;

restore database masterfrom disk='D:\DBBackup\master.bak'with replace;go

master数据还原完成之后,启动SQL Server实例的Service,就可以正常访问SQL Server实例。

 

参考文档:

上一篇:租房那些事
下一篇:Execute SQL Task 第三篇:参数和变量的映射

发表评论

最新留言

逛到本站,mark一下
[***.202.152.39]2025年04月05日 11时32分17秒