nbu是支持sql alwayson架构的, 但是根据兼容手册,sql2017要求的最低版本是nbu8.1.1 建议先将nbu升级到8.1.1或更高nbu对sql alwayson的支持是有严格要求的,备份失败大部分都是没按要求来做,参考以下过程:关于用户权限 1) 登陆用户必须加入本地administrators组(Computer ...
显示全部nbu是支持sql alwayson架构的, 但是根据兼容手册,sql2017要求的最低版本是nbu8.1.1 建议先将nbu升级到8.1.1或更高
nbu对sql alwayson的支持是有严格要求的,备份失败大部分都是没按要求来做,参考以下过程:
- 关于用户权限
1) 登陆用户必须加入本地administrators组(Computer Management -> Local Users and Groups ->Groups ->Administrator - 需要加上SQL Server的账户)
2)必须通过sql management工具,将登陆用户加入sysadmin角色(通过sql server management studio---安全性-> 登录名 - 登录属性 - 服务器角色 - 勾选 sysadmin)
3) NetBackup Client service NetBackup Legacy service和NetBackup Legacy Network service更改为当前登陆用户,重启服务
4)nbu 客户端的域账户需要配置组策略:本地安全策略---本地策略---用户权限分配
---通过身份验证后模拟客户端(Impersonate a client after authentication)
---替换一个进程及令牌( Replace a process level token)
---作为服务登录(logon as service)
运行组策略更新命令(组策略更新)使此项更改生效:
gpupdate /Force
- 加入always on的db,采用集群方式备份,使用一个单独的策略。没加入的采用本地方式备份即可
- 关于always on类型db的策略设置
1)加入always on的db,只能采用脚本方式备份,并且需要将db包含的所有节点都添加到策略里
2)各节点所用的脚本必须起相同的名字,放到相同的目录下面
3)执行策略备份时,backup image所属节点实际上是failover cluster的节点名,必须可以被解析
- 关于脚本配置:
需要使用nbu sql gui,以本地名称添加sql链接,然后通过backup 生成脚本,将下面的一行增加到脚本里。
PREFERREDREPLICA TRUE
备份的时候,同时两个节点发起,根据always on的策略,不备份的那个节点会自动退出。参与备份的节点开始备份,在job detail里有体现,备份的image的owner是wsfc的名字。注意在host management里approve那些自动发现的集群名称。
- 关于日志截断:
1)加入ag的db到底从哪个节点发起备份,是由sql server always on的属性(通过sql server management studio)决定的,默认从备库,可以更改。
2)从备库发起备份的限制:只能做全备份,不能做增量和日志备份
3)完全备份和差异备份不会截断日志,只有日志备份才会截断
所以如果想实现日志截断,需要配置ag备份从主节点备份,且额外配置一个policy来备份事务日志。生成日志备份脚本的方式参考步骤4
- 关于恢复:
1)恢复时要使用nbu ms sql client,恢复always on包含的db时,必须使用Failover cluster的名称,否则刷不出备份信息。
2)因为涉及不同节点,master server端必须要创建No.Restrictions文件。
Windows平台:
install_path\Veritas\NetBackup\db\altnames\No.Restrictions
unix平台:
/usr/openv/netbackup/db/altnames/No.Restrictions
3)恢复时,必须先把要恢复的db从ag里移出来并删除
4) 然后通过nbu ms sql gui创建恢复脚本,脚本类型为create a move template,recoverred,保存为脚本名称
5) 修改脚本,指定恢复数据库的名字 数据文件和日志文件的位置 执行恢复,将恢复到本地节点
6)通过sql server management studio界面,允许ag添加db的向导,把db重新加入到ag即可
收起