关于系统的小背景。它是具有 1 个主要和 1 个辅助的 SQL Server 2012 AlwaysOn 可用性组。
我一直在关注这篇文章(SSIS with AlwaysOn)以使 SSIS 与 AlwaysOn 一起工作。我有一个记录服务器当前角色的表和一个每两分钟运行一次检查它最近是否发生故障的作业。我遇到的问题是次要只接受 SSISDB 的只读连接,因此我的脚本不会执行。
这是脚本:
USE master;
DECLARE @last_role TINYINT;
SET @last_role = (
SELECT TOP 1 [replica_role]
FROM [dbo].[replica_role]
);
DECLARE @current_role TINYINT;
SET @current_role = (
SELECT ROLE
FROM sys.dm_hadr_availability_replica_states
WHERE is_local = 1
);
IF (@last_role = 2 AND @current_role = 1)
BEGIN
USE SSISDB;
OPEN MASTER KEY DECRYPTION BY PASSWORD = 'x'
ALTER MASTER KEY ADD ENCRYPTION BY SERVICE …
Run Code Online (Sandbox Code Playgroud)