[AWS DMS] SQL Server<->MySQL 잘되던 DMS 가 자꾸 실패로 뜨는 이유

리미·2021년 4월 19일
0
post-thumbnail

데이터팀에서 CDC와 AWS DMS를 이용해 SQL Server<->MySQL 싱크를 맞추고 MySQL를 통해서 Amazon QuickSight에 데이터를 뿌리고있었다.
어느순간 Amazon QuickSight 데이터가 안뿌려지니 데이터팀에서 지원요청이 들어왔다

회사노션 문서에 작성해서 공유했던걸 다시 적어본다

DMS가 자꾸 실패로 뜨는 이유 1

Polling interval 문제

특징 : DMS에서 실행중이 열심히 돌다가 진행률이 0%에서 실패가 떠버린다

DMS상에 최근 실패 메세지에 현재는 N초로 설정되어있으니 5분이상으로 셋팅하라는 메세지가 나온다

Last Error Stream Component Fatal error.
Task error notification received from subtask 0, thread 0 [reptask/replicationtask.c:2822] 
[1020101] MS-CDC Capture job Polling interval is set to 5 seconds. 
Please have this value set more than 5 minutes.; 
Failed while preparing stream component ‘<-->’.; 
Cannot initialize subtask; Stream component ‘<-->’ terminated 
[reptask/replicationtask.c:2829] 
[1020101] Stop Reason FATAL_ERROR Error Level FATAL

이부분만 보면 된다

MS-CDC Capture job Polling interval is set to 5 seconds.
너 CDC Capture가 5초로 셋팅되어있어
Please have this value set more than 5 minutes.;
5분 이상으로 셋팅해

default로 5초로 지정되어있으니, 변경해주어야한다.
변경해주고 stop하고 start하면 변경사항 저장됨

use <--database name-->;
EXEC sys.sp_cdc_change_job @job_type = 'capture' ,@pollinginterval = 360;
exec sp_cdc_stop_job 'capture';
exec sp_cdc_start_job 'capture';

5분 딱 맞춰서 300초로 지정했더니 같은 오류가 뜨는 거보면
5분이상이 아니라 초과인 듯

360초(6분)으로 지정해 놓았다.

BACKUP-ed data 문제

특징 : DMS에서 실행중이 열심히 돌면서 진행률이 N%에서 멈춘다
숫자까지 잘 지정해놨는데 에러가 뜬다

Last Error AlwaysOn BACKUP-ed data is not available Task error notification 
received from subtask 0, thread 0 [reptask/replicationtask.c:2822] 
[1020465] Error executing source loop; Stream component failed at subtask 0, 
component <-->; 
Stream component '<-->' terminated [reptask/replicationtask.c:2829] 
[1020465] Stop Reason FATAL_ERROR Error Level FATAL

RDS SQL Server에서 따로 5분마다 로그백업 도는게 있는게 저거랑 같이 돌아버리니 CDC 프로세스를 막아버리는듯

DMS 엔진 버전을 3.4.3이 아닌 3.4.2나 3.4.4로 변경을 해야하는데 너무 큰작업이 되어버릴것같아 일단 보류(나는 백엔드팀이지 데이터팀이 아니야)

일단 퀵사이트는 어떻게 든지 돌아가야 하니 아래 예제 참고해서 86399초로 변경하고 AZ 보조값도 설정해놓음

exec rdsadmin..rds_set_configuration 'cdc_capture_pollinginterval' , 86399;

참고
Microsoft SQL Server 데이터베이스를 AWS DMS에서 소스로 사용
AWS DMS Task getting failed after completion with error as AlwaysOn BACKUP-ed data is not available

profile
Python이 하고싶은데 자꾸 Flutter 시켜서 빡쳐서 만든 블로그

0개의 댓글