zoukankan      html  css  js  c++  java
  • 7 MSSQL数据库备份与恢复

    MSSQL数据库备份

    1 SQLAgent配置
    2 设置连接属性
    3 输入SA账号密码
    4 SQL备份脚本配置
    5 生成SQL全量备份脚本
    6 生成SQL差异备份脚本
    7 修改SQL差异备份脚本
    8 SQL全量备份策略
    9 SQL差异备份策略
    10 SQL全量备份
    11 SQL差异备份


    12 MSSQL数据库恢复
    13 生成恢复脚本
    14 备份脚本修改
    15 执行恢复操作

    -----------------------------------------------------------------------------------------------------------------------------------------

    第一章 MSSQL备份

    1、确定MSSQL数据库能正常使用

    2、在windows上安装nbu客户端软件,安装客户端软件同时会自动把MSSQL agent安装了,安装完毕并重启。

    3、在客户端的netbackup MSSQL client工具的set server connections properties属性里设置MSSQL的用户名和密码,输入用户名和密码后,按apply,然后关闭。

    clip_image002[4]

    clip_image003[4]

    4、生成备份MSSQL各类型备份脚本(完全备份/差异备份/日志备份等)

    在客户端打开netbackup MSSQL client工具,选择backup SQL server objects

    clip_image005[4]

    选择要备份的数据库/备份类型,选择保存save,然后单击backup,保存备份脚本。

    clip_image007[4]

    clip_image009[4]

    5、设置备份MSSQL的备份策略

    选择策略类型为MS-SQL-Server

    clip_image010[4]

    添加一个备份计划,备份类型选为automatic backup。不能把Default-Application-Backup删除,它实际是备份MSSQL的计划,并把它的保留数据时间retention改成与automatic backup的retention一样。

    clip_image011[4]

    添加客户端

    clip_image012[4]

    添加客户端创建的备份脚本,只能添加一种脚本。

    clip_image013[4]

    6、进行手动备份测试

    clip_image015[4]

    clip_image017[4]

    第二章 SQL Server恢复

    恢复数据库时,不用把MSSQL实例服务停止,并且不用把其他普通数据库删除掉。

    1、在服务器端的backup/archive and restore工具里specify netbackup machines and policy type设置好源和目的机器、恢复策略类型为MS-SQL-Server

    clip_image019[4]

    clip_image021[4]

    clip_image023[4]

    clip_image025[4]

    2、在服务器端用netbackup MSSQL client进行恢复MSSQL

    选择restore SQL Server objects

    clip_image027[4]

    选择数据库

    clip_image029[4]

    选择要恢复的数据库,一次只能选择一个数据库。选上use replace option(能够代替已有数据库文件)和recovered(自动对数据库进行恢复,这样不会在恢复完成后发现数据库是灰色的,数据库变成不可用),数据库检查选为none,选上launch immediately后按restore进行恢复。在activity monitor里可以看到恢复作业进度。

    clip_image031[4]

    这里是本机恢复还原,如果需要使用脚本还原的话,要先制作脚本,然后修改脚本;制作脚本时,上图的launch immediately 改成 save; 然后修改脚本(因为这个文档是另外工程师写的,我在我的测试环境补充完整,所以看到的恢复数据库名会不一样)

    clip_image033[4]

    注意:

    Nbu恢复master datbase时,不需要把MSSQL实例停止并启动到单用户模式下,但要选上use replace option(能够代替已有数据库文件)和recovered(自动对数据库进行恢复,这样不会在恢复完成后发现数据库是灰色的,数据库变成不可用)。在恢复过程中,MSSQL实例会被nbu关闭再启动。

    如果整个MSSQL数据库出现崩溃的话,先恢复master database再恢复其他普通数据库。

    恢复普通数据库时,如果恢复完成后发现数据库是灰色的,并且显示“正在加载”,则需要用户进入到SQL分析器里输入如下命令:restore database database-name with recovery

    第三章 SQL Server异机恢复

    恢复前提:(这三点非常重要,切记,否则,恢复会出现各种各样的问题)

    1. 确认源主机和目的主机,安装相同的操作系统,版本和补丁都要相同;

    2. 确认源主机和目的主机的SQL数据库的版本相同包括补丁

    3. 确认Server服务器、源主机和目的主机的NBU的版本以及补丁相同

    日志分析:一般client备份方式,日志都会保存在dbclient下面,以及bphdb是运行脚本后生成的日志;

    一般vmware的备份日志存放在,bpVMutil,bpVMreq和bpfis下面,其中bpfis是做快照的日志;bpvmutil 是关于策略配置和还原的日志;bpvmreq 是恢复时的日志

    异机恢复的步骤跟上面的差不多,但是需要特别说明两点:

    1 允许异机恢复(nbu软件服务器上操作master server)

    将该主机配置为允许重定向恢复(即允许异机恢复)(linux环境)

    #su – root

    #mkdir –p /usr/openv/netbackup/db/altnames/

    #cd /usr/openv/netbackup/db/altnames/

    #touch No.Restrictions

    将该主机配置为允许重定向恢复(即允许异机恢复)(windows环境)

    cd c:program filesopenv etbackupdbaltnames

    2)允许客户端恢复,设置如下(nbu软件服务器上操作master server): 
    On a Windows master server, run the command: 
    <install_path>VERITASNetBackupinadmincmdpgetconfig

    DISALLOW_CLIENT_LIST_RESTORE = YES 
    DISALLOW_CLIENT_RESTORE = YES 

    一定要改为DISALLOW_CLIENT_LIST_RESTORE和DISALLOW_CLIENT_RESTORE为NO 
    DISALLOW_CLIENT_LIST_RESTORE = NO 
    DISALLOW_CLIENT_RESTORE = NO

    否则会报ORA-19507 ORA-27029 ORA-19511错误

    3)对nbu library做链节放在$ORACLE_HOME/lib目录(恢复机器上操作)

    cd $ORACLE_HOME/lib 
    ln -s /usr/openv/netbackup/bin/libobk.so .

    否则会报ORA-19554 ORA-27211错误

  • 相关阅读:
    HTML常用标签及其属性
    初识Java
    JS中firstChild,lastChild,nodeValue属性
    前端网页进度Loading
    Git分支管理小结
    Vim文本编辑命令
    EF
    Linq
    委托(作用:解耦),lambda的演化
    单例模式
  • 原文地址:https://www.cnblogs.com/yihr/p/9221267.html
Copyright © 2011-2022 走看看