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,然后关闭。

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

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

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

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

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

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

添加客户端

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

6、进行手动备份测试

第二章 SQL Server恢复

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

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

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

选择restore SQL Server objects

选择数据库

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

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

注意:

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 files\openv\netbackup\db\altnames\

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

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错误

7 MSSQL数据库备份与恢复的更多相关文章

  1. 一个防止误删MSSQL数据库的方法

    一个防止误删MSSQL数据库的方法 环境:Windows2008 R2 .SQL 2012 今天发现一个有趣的现象,之前数据库服务器的其中几个数据库做过镜像,不过现在已经删除了,今天又要在那台服务器上 ...

  2. MSSQL数据库的一些基础知识

    转几个关于MSSQL数据库基础的文章: sql server系统表详细说明 SQL Server中系统数据库介绍 SQL Server中的角色(服务器级别和数据库级别角色)

  3. MSSQL数据库中Text类型字段在PHP中被截断之解 (转)

    在PHP中使用了MSSQL数据库,恰巧数据库中又使用了Text类型字段,于是问题产生了.每次从数据库中查询得到的数据总是被莫名的截断,一开始是以为我使用的PHP框架中对字符串的长度有所限制,后来发现这 ...

  4. PHP访问MSSQL数据库(实例代码)

     本例子只作为简单的引导,实现一个简单的查询: <!DOCTYPE HTML> <html lang="en-US"> <head> <t ...

  5. C#(asp.net)备份还原mssql数据库代码【转】

    采集自互联网,未验证..... 如果我们使用虚拟主机为网站空间,这时如果需要备份和还原msssql数据库是非常麻烦,如果在网站后台管理当中加入对msssql数据库的操纵,可以使我们对数据库的备份和还原 ...

  6. 如何判断MSSQL数据库磁盘出现了瓶颈

    问大神石沫:如何判断MSSQL数据库磁盘出现了瓶颈? 石沫(A1):您好,您的问题非常好,SQL SERVER提供了很多关于I/O压力的性能计数器,请选择性能计算器PhysicalDisk(Logic ...

  7. MSSQL数据库迁移到Oracle

    MSSQL数据库迁移到Oracle 最近要把一个MSSQL数据库迁移到Oracle上面,打算借助PowerDesigner这个软件来实现;今天简单研究一下这个软件的运用;把一步简单的操作步骤记录下来: ...

  8. PHP连接MSSQL数据库案例,PHPWAMP多个PHP版本连接SQL Server数据库

    课前小知识普及:MSSQL和SQL Server是同一个软件,叫法不同而已,MSSQL全称是Microsoft SQL Server,MSSQL是简写,有些人则喜欢直接叫SQL Server,我就比较 ...

  9. 将mssql数据库高版本迁移到低版本

    将mssql数据库高版本迁移到低版本 在低版本目标数据库中创建目标空数据库[TargetDb] ,注意新建数据库即可,不要创建任何表 在低版本数据库中,选中[服务器对象=>链接服务器] 右键[新 ...

随机推荐

  1. centos7安装与卸载软件

    安装 yum install 服务名 查看服务名 rpm -qa |grep -i aerospike 或者 yum list installed | grep aerospike 卸载 yum re ...

  2. Juniper SRX550防火墙web页面CPU达到100%的故障解决办法

    Juniper SRX550防火墙web页面CPU达到100%的故障解决办法 利用telnet远程连接主机,对web页面注销重新登录即可,在配置中输入命令:run restart web-manage ...

  3. 转 RMAN-20005: target database name is ambiguous

    发生的这个错误的由于: 在RMAN CATALOG中,register了一个name叫test的数据库,后来这个库被我搞坏了.就重建了一个test的数据库,名称没有更改,又重新register到RMA ...

  4. 研磨设计模式学习笔记2--外观模式Facade

    需求:客户端需要按照需求,执行一个操作,操作包括一个系统中的3个模块(根据配置选择是否全部执行). 外观模式优点: 客户端无需知道系统内部实现,,只需要写好配置文件,控制那些模块执行,简单易用. 外观 ...

  5. python 使用csv.reader和csv.writer读写文件并转换成dataframe格式

    import csv import pandas as pd ###csv.reader用法 ''' f=open(r"C:\Users\admin\pycdtest\wanyue\yuee ...

  6. Unity 游戏对象的组件列表

    描述: 1 个游戏对象,上面有 4 个组件, 如图: 脚本 Test_01 的内容,如下: using System.Collections; using System.Collections.Gen ...

  7. 性能测试工具LoadRunner14-LR之Controller 简介

    当虚拟用户开发完成之后,使用Controller将这个执行脚本的用户从单用户转化为多用户,从而模拟大量用户操作,进而形成负载.(多用户单循环,多用户多循环)我们需要对负载模拟的方式和特征进行配置. 场 ...

  8. 提交表单之前对表单进行检查的方法 onsubmit="return checkSubmit();"

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. 操作符&流程控制

    运算符:算术运算符 赋值运算符  字符串运算符 递增(++)和递减(--)运算符 逻辑运算符 比较运算符 三元运算符         1.算术运算符           算术运算符,用于完成各种算术运 ...

  10. 先定个小目标, 使用C# 开发的千万级应用

    dotNET跨平台 微信号 opendotnet 功能介绍 在这里你可以谈微软.NET,Mono的跨平台开发技术,也可以谈谈其他的跨平台技术.在这里可以让你的.NET项目有新的思路,不局限于微软的技术 ...