zoukankan      html  css  js  c++  java
  • 备份和还原 第三篇:master 数据库的备份和还原

    在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:TestDBBackupFoldermaster_1.bak' --specify new backup file
    with
    compression,
    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 master
    from disk='D:DBBackupmaster.bak'
    with replace;
    go

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

    参考文档:

    SqlServer系统数据库还原(三)系统数据库master-msdb-model 还原模拟测试

    master Database

    Restore the master Database (Transact-SQL)

    Start SQL Server in Single-User Mode

    sqlcmd Utility

    Use the sqlcmd Utility

  • 相关阅读:
    今年暑假不AC
    Java类的生命周期
    Java反射机制
    Java环境变量的配置及使用
    javaIO流(一)
    ftp服务器测试
    linux下svn使用及查看杀掉进程
    网络配置学习
    网络配置指令
    dos攻击与防御
  • 原文地址:https://www.cnblogs.com/ljhdo/p/4549889.html
Copyright © 2011-2022 走看看