Linked Server를 사용하여 MSSQL에서 MariaDB를 업데이트하면 SSIS에서 오류가 발생함
우리는 MS SQL 서버 2016에서 mariadb 데이터베이스로 데이터를 가져오기 위해 SSIS 패키지를 사용하여 온라인 상점 데이터를 업데이트하고 있습니다.최신 mariadb odb 3.1 64비트 드라이버를 사용하여 연결된 서버 연결을 설정했습니다.
이것은 대부분의 경우에 잘 작동합니다.그러나 오류가 발생하면 패키지 실행이 실패하는 경우가 있습니다.
행 집합이 최적 동시성을 사용하고 있으며 포함된 행을 마지막으로 가져오거나 재동기화한 후 열 값이 변경되었습니다.
스택 오버플로 및 다른 리소스를 검색하는 것은 Odbc 드라이버를 구성하여 문제를 해결한 것으로 보입니다.
영향을 받는 행 대신 일치하는 행 반환
그러나 이것이 우리의 경우에 문제를 해결하지는 못합니다.
MYSQL ODBC Driver 8.0을 사용해 보았지만 로드 밸런서를 통과하기 위해 포트 3307을 필수적으로 구성할 수 없습니다.
다음과 같이 적으셨습니다.
행 집합이 최적 동시성을 사용하고 있으며 포함된 행을 마지막으로 가져오거나 재동기화한 후 열 값이 변경되었습니다.
이는 항상 최적의 동시성(SQL Server의 행 버전 관리)을 가진 위험입니다.어떻게 보면 비관적 동시성(거래적 고립)을 가진 교착상태의 오류와 다르지 않습니다.두 시나리오 모두 문제를 해결하기 위한 계획(및 코드)이 있어야 합니다.
이것은 부분적으로 비즈니스적인 문제이기도 하고 부분적으로 기술적인 문제이기도 합니다.이 경우 비즈니스 측면에서 바람직한 결과는 무엇입니까?"승리"해야 하는 업데이트는 무엇입니까?다른 일을 하기 전에 이것을 알아야 합니다.기술적인 측면에서는 시도 간에 약간의 대기 시간을 두고 재시도 루프를 설정하는 것이 좋습니다.
이 문제를 많이 해결하는 경우 트랜잭션 격리를 대신 사용하는 것을 고려해 볼 수 있습니다.
언급URL : https://stackoverflow.com/questions/56482069/updating-mariadb-from-mssql-using-linked-server-causes-error-in-ssis
'IT' 카테고리의 다른 글
.live가 더 이상 사용되지 않으므로 향후 요소에 대한 jQuery.on 함수 (0) | 2023.09.20 |
---|---|
MySQL - SELECT...WHERE ID IN (..) - 올바른 순서 (0) | 2023.09.20 |
도커 파일에서 RUN mkdir를 실행할 수 없습니다. (0) | 2023.09.20 |
Android에서 사용자 지정 라디오 단추 추가 (0) | 2023.09.20 |
json과 xml의 장점과 단점은 무엇입니까? (0) | 2023.09.20 |