<작업내용>
mssql에서 A서버를 링크드서버로 구성하여 B서버에서 접근 하려 합니다.
B서버에서 특정 테이블에 데이터가 INSERT되면 A서버로 링크드서버를 통해
오픈쿼리로 같은 데이터를 INSERT하려고 합니다.

<트리거 스크립트>
CREATE Trigger [dbo].[트리거명] on [dbo].[B서버_테이블] 
for Insert 
AS  
INSERT openquery([A서버주소], 'select TEST_NM from [디비명].dbo.A서버_테이블') 
VALUES (123)
GO

<에러상황>
위 상태에서 B서버_테이블에 INSERT문을 날리면 아래와 같이 에러가 발생합니다.
-------------------------------------------------------------------------
연결된 서버 "A서버"의 OLE DB 공급자 "SQLNCLI11"이(가) 메시지 "활성 중인 트랜잭션이 없습니다."을(를) 반환했습니다.
메시지 7391, 수준 16, 상태 2, 줄 2
연결된 서버 "A서버"의 OLE DB 공급자 "SQLNCLI11"이(가) 분산 트랜잭션을 시작할 수 없으므로 요청한 작업을 수행할 수 없습니다.
-------------------------------------------------------------------------

<시도한 방법>
1. MS DTC 서비스 활성화(가장 많이 검색된 방법)
1.PNG

2. 방화벽은 MSDTC.EXE.프로그램을 예외 처리하였고, 혹시 몰라 아예 방화벽을 해제 하였습니다.

3. 링크드서버 옵션 설정 변경
2.PNG

4. 레지스트리 변경
HKEY_LOCAL_MACHINESOFTWAREMicrosoftMSDTCSecurity에 NetworkDtcAccess => 1
HKEY_LOCAL_MACHINESOFTWAREMicrosoftMSDTCSecurity에 NetworkDtcAccessTransactions => 1
HKEY_LOCAL_MACHINESOFTWAREMicrosoftMSDTC에 TurnOffRpcSecurity => 1

5. 쿼리 변경
SET XACT_ABORT ON
BEGIN DISTRIBUTED TRAN
     쿼리
COMMIT TRAN
SET XACT_ABORT OFF

위 방법을 A서버, B서버 모두 적용하였지만 에러가 계속 발생합니다.


하루동안 이것만 계속 살펴보았으나 해결책을 찾을수가 없네요.


서버구성 문제인지 쿼리부분 문제인지 아직 감도 안오네요.


해결방법을 알고 계신분은 답글 좀 부탁 드립니다.

No. Subject Author Date Views
Notice SQL강좌: 챗GPT와 함께 배우는 SQL Server 무료 강좌 목차와 소개 (2023년 9월 업데이트) 코난(김대우) 2023.08.18 14467
Notice Python 무료 강좌 - 기초, 중급, 머신러닝(2023년 6월 업데이트) 코난(김대우) 2021.01.01 8885
9818 mssql declare 관련 질문 [5] 가경승민아빠 2017.04.25 4037
9817 반복 랜덤쿼리문 관련질문입니다. [2] bboradoli 2017.04.24 3460
9816 초보의 쿼리작성을 문의합니다 [4] 길주석 2017.04.22 5042
9815 2008R2 에서 2012 로 데이터 전송 [1] bios 2017.04.21 3936
9814 mdf 파일 만으로 DB복구하기 [2] DOOLLY 2017.04.19 3643
9813 linked server 데이터베이스 동기화 문의 [1] 숭이 2017.04.18 3127
9812 계정권한 관련 질문입니다.. 슬이슬이 2017.04.18 2669
9811 외래키) 죄송하다는 말을 드리고 질문드립니다.. [1] sni 2017.04.17 4058
9810 데이터 타입 = image 일때 용량줄이는 방법 [1] 북북이 2017.04.17 3525
9809 작업이 바뀔때마다 순번 넣는 쿼리 [2] pobiblue 2017.04.11 4031
9808 오류메시지 확인 좀 부탁드립니다ㅜㅜ [4] 기타치는퐝동 2017.04.11 4313
9807 sql server agent 없이 해당 시간대에 프로시져가 호출될 수 있을까요? [1] bios 2017.04.10 3721
9806 JOIN 시 ON의 순서 문의 하하하하하 2017.04.10 2384
9805 헥사코드 표기방법! [1] 기타치는퐝동 2017.04.10 2854
9804 쿼리구문 중 입력된 문자를 여러개의 행으로 나누어 출력하는 방법 문의 드립니다. [1] 트리시 2017.04.08 3918
» MSSQL 링크드서버 구성 후 트리거로 INSERT시 오류가 발생합니다. 인천코딩 2017.04.06 7830
9802 리소스 풀 에러 [1] 하아아 2017.04.06 2535
9801 초를 시분초로 나타내는 방법 문의 드립니다. [2] 아싸라비아콜롬비아 2017.04.06 3690
9800 merge사용 오류 [1] 베르나데 2017.04.04 2254
9799 트랜잭션(프로세스 ID 137)이 잠금 리소스에서 다른 프로세스와의 교착 상태가 발생하여 실행이 중지되었습니다. 트랜잭션을 다시 실행하십시오. [1] 엑삼이 2017.04.04 3925





XE Login