SqlServer跨集群升级

SqlServer跨集群升级

1.新Server的IP要和旧的在同一网段。

2.安装SQL SERVER(注意:排序要和以前的一样,更改TempDB位置)

3.开启防火墙,并打开1433和5022端口

4.开启DTC服务及防火墙对应的Rule,用于Linked Server等

5.DB配置

6.创建新集群。

一台新server

--切换集群

ALTER SERVER CONFIGURATION SET HADR CLUSTER CONTEXT='ss.COM'

--查看集群

select cluster_name from sys.dm_hadr_cluster

 

7.新server加入到旧AG同步数据。

8.同步完后,删除监听,下线旧AG。

9.切换回新集群,重建AG.监听。

--切换集群

ALTER SERVER CONFIGURATION SET HADR CLUSTER CONTEXT=local

--查看集群

select cluster_name from sys.dm_hadr_cluster

 

--恢复DB脚本

RESTORE DATABASE rgsdyn with recovery

 

 

重建Link Server:(导出脚本,密码手动填)

重建Login:(需要先有DB)

https://blog.csdn.net/burgess_liu/article/details/11904921

 

  需要注意的是重建的Login脚本中需要删除NT、##MS开头的系统Login,同时如果安装sql server 2016时如果指定了SA,需要修改下SA的密码。

 

重建operator:(导出脚本)

重建Agent JOB: (需要先有DB和Operator)

新Server导入agent job时,所有JOB是否打开都是参照之前server的设定,可以通过将脚本中@enabled = 1 替换为@enabled = 0的方式将所有脚本变为disabled。需要额外注意的是,脚本中有两类@enabled,一个控制job是否运行,一个控制job schedule是否打开,全部替换为@enabled = 0后,需要在以下界面把shedule打开,否则即使将job enable,也不会自动运行。

 

重建邮件配置:

重建维护计划:

 

Script:

 

--切换集群

ALTER SERVER CONFIGURATION SET HADR CLUSTER CONTEXT='SQL12AG.QUANTACN.COM'

--查看集群

select cluster_name from sys.dm_hadr_cluster

--恢复DB脚本

RESTORE DATABASE rgsdyn with recovery

--查看DB排序

select cluster_name from sys.dm_hadr_cluster

--查看同步状态

SELECT

    g.name as ag_name,

    r.replica_server_name as replica_name,

    rs.is_local,

    rs.role_desc AS [role],

    rs.connected_state_desc as connection_state,

    rs.synchronization_health_desc as sync_state

FROM sys.dm_hadr_availability_replica_states as rs

JOIN sys.availability_groups as g

    on g.group_id = rs.group_id

JOIN sys.availability_replicas as r

    on r.replica_id = rs.replica_id

原文地址:https://www.cnblogs.com/JinweiChang/p/10461779.html