2017-05-04 7 views
0

이제 SQL Server 2016을 사용하여 SSISDB를 완전히 고 가용성으로 사용할 수있게되었습니다. 작업 설정과 관련하여 질문이 있습니다.SSISDB 및 항상 켜기. 작업을 예약하는 방법?

SSISDB에 배포 된 SSIS 패키지를 실행하는 SQL 에이전트 작업을 만들 때 작업 단계에서 서버가 수신기 이름 또는 실제 호스트 이름이어야합니까?

실제 호스트 이름을 사용하고 두 복제본에서 작업을 만들면 DB가 읽기 전용 모드이기 때문에 보조 작업이 항상 실패하기 때문에 나는 묻습니다. 나는 의견을 먼저 받기를 원했기 때문에 리스너 이름을 아직 지정하지 않았다. 이 방법을 따르는 경우

답변

0

서버 이름은 리스너 이름이어야합니다, 하나 개의 인스턴스에서 작업을 배포하기에 충분

당신은 또한 물리적 호스트 이름을 사용하고 조각 아래가 제공, 모든 경우에 작업을 배포 할 수 있습니다 첫 번째 단계로 코드

- fn_hadr_group_is_primary 
USE master; 
GO 
IF OBJECT_ID('dbo.fn_hadr_group_is_primary', 'FN') IS NOT NULL 
    DROP FUNCTION dbo.fn_hadr_group_is_primary; 
GO 
CREATE FUNCTION dbo.fn_hadr_group_is_primary (@AGName sysname) 
RETURNS bit 
AS 
BEGIN; 
    DECLARE @PrimaryReplica sysname; 

    SELECT 
    @PrimaryReplica = hags.primary_replica 
    FROM sys.dm_hadr_availability_group_states hags 
    INNER JOIN sys.availability_groups ag ON ag.group_id = hags.group_id 
    WHERE ag.name = @AGName; 

    IF UPPER(@PrimaryReplica) = UPPER(@@SERVERNAME) 
    RETURN 1; -- primary 

    RETURN 0; -- not primary 
END; 

필요도 몇 가지 일반적인 문제를 다루는이 포스트가 취해야 할주의 오프

https://blogs.msdn.microsoft.com/mattm/2012/09/19/ssis-with-alwayson/

+1

하나의 서버에 작업을 배치 할 때 유일한 문제는 전체가 손실되는 경우입니다. 따라서 두 가지 모두를 사용하는 것이 더 좋습니다. –

+0

그래, 소리가 잘 들린다. 하드웨어 장애를 피할 수있다. – TheGameiswar