증상
Microsoft SQL server 2008, Microsoft SQL Server 2012 또는 Microsoft SQL Server 2008 R2에서 LOB (large object) 데이터를 포함 하는 쿼리를 실행 하 여 Transact-sql 변수로 로드 하면 데이터 손상이 발생 합니다. 예를 들어 다음 쿼리를 실행 하 여 데이터베이스 열의 XML 데이터를 XML 변수로 복사 합니다. Declare @OUTXML as XMLSELECT @OUTXML = DataXml FROM Table_1 WHERE id=1 이 경우 SELECT 문은 다른 스레드에서 동일한 XML 열을 업데이트 하려고 할 때 실행 됩니다. 이 문제로 인해 데이터가 손상 될 수 있습니다. 또한 손상 된 XML 열에서 읽기 및 쓰기 작업을 수행 하는 경우 다음 오류 메시지 중 하나가 나타납니다.
-
XML 데이터 형식이 손상 되었습니다.
-
예기치 않은 파일의 끝이 발생 했습니다.
참고
-
일반적으로이 문제는 높은 동시 로드 작업 중에 발생 합니다.
-
로그 판독기 에이전트를 사용 하 여 트랜잭션 복제에 대 한 게시 문서 목록의 일부인 테이블에서 손상 된 XML 데이터를 읽으면 다음 오류 메시지가 나타납니다.
XML 데이터 형식이 손상 되었습니다. (원본: MSSQLServer, 오류 번호: 6611)
원인
이 문제는 lob 데이터를 데이터베이스 열에서 LOB 데이터 형식 변수로 복사 하기 전에 LOB 데이터 열에 대 한 잠금이 해제 되어 있기 때문에 발생 합니다. 모든 동시 쿼리는 복사 프로세스 중 복사 프로세스가 완료 되기 전에 동일한 LOB 데이터를 업데이트할 수 있습니다. 데이터가 손상 되는 문제가 발생 합니다.
해결 방법
누적 업데이트 정보
SQL Server 2012 누적 업데이트 7
이 문제에 대 한 픽스는 먼저 누적 업데이트 7에서 릴리스 되었습니다. SQL Server 2012의이 누적 업데이트 패키지를 구하는 방법에 대 한 자세한 내용은 다음 문서 번호를 클릭 하 여 Microsoft 기술 자료 문서를 참조 하세요.
2823247 SQL Server 2012에 대 한 누적 업데이트 패키지 7참고 빌드가 누적 되므로 새로운 각 수정 릴리스에는 이전 SQL Server 2012 fix 릴리스에 포함 된 모든 핫픽스와 모든 보안 수정 사항이 포함 되어 있습니다. 이 핫픽스를 포함 하는 최신 픽스 릴리스를 적용 하는 것이 좋습니다. 자세한 내용을 확인하려면 다음 문서 번호를 클릭하여 Microsoft 기술 자료 문서를 참조하십시오.
2692828 SQL Server 2012이 출시 된 이후 출시 된 SQL Server 2012 빌드
SQL Server 2008 R2 서비스 팩 1에 대 한 누적 업데이트 12
이 문제에 대 한 픽스는 먼저 누적 업데이트 12에서 릴리스 되었습니다. SQL Server 2008 R2 서비스 팩 1 용 누적 업데이트 패키지를 구하는 방법에 대 한 자세한 내용은 다음 문서 번호를 클릭 하 여 Microsoft 기술 자료 문서를 참조 하세요.
2828727 SQL Server 2008 R2 서비스 팩 1 용 누적 업데이트 패키지 12참고 빌드가 누적 되므로 새로운 각 수정 릴리스에는 이전 SQL Server 2008 R2 서비스 팩 1 해결 릴리스에 포함 된 모든 핫픽스와 모든 보안 수정 사항이 포함 되어 있습니다. 이 핫픽스를 포함 하는 최신 픽스 릴리스를 적용 하는 것이 좋습니다. 자세한 내용을 확인하려면 다음 문서 번호를 클릭하여 Microsoft 기술 자료 문서를 참조하십시오.
2567616 SQL Server 2008 R2 서비스 팩 1 이후 릴리스된 SQL Server 2008 R2 빌드가 릴리스 되었습니다.
SQL Server 2008 서비스 팩 3 용 누적 업데이트 10
이 문제에 대 한 픽스는 먼저 누적 업데이트 10에서 릴리스 되었습니다. SQL Server 2008 서비스 팩 3 용 누적 업데이트 패키지를 구하는 방법에 대 한 자세한 내용은 다음 문서 번호를 클릭 하 여 Microsoft 기술 자료 문서를 참조 하세요.
2814783 SQL Server 2008 서비스 팩 3 용 누적 업데이트 패키지 10참고 빌드가 누적 되므로 새로운 각 수정 릴리스에는 이전 SQL Server 2008 서비스 팩 3 해결 릴리스에 포함 된 모든 핫픽스와 모든 보안 수정 사항이 포함 되어 있습니다. 이 핫픽스를 포함 하는 최신 픽스 릴리스를 적용 하는 것이 좋습니다. 자세한 내용을 확인하려면 다음 문서 번호를 클릭하여 Microsoft 기술 자료 문서를 참조하십시오.
2629969 SQL Server 2008 서비스 팩 3 이후 릴리스된 SQL Server 2008 빌드가 릴리스 되었습니다.
SQL Server 2008 R2 서비스 팩 2 (SP2)의 누적 업데이트 5
이 문제에 대 한 픽스는 먼저 누적 업데이트 5에서 릴리스 되었습니다. 이 누적 업데이트 패키지를 구하는 방법에 대 한 자세한 내용은 SQL Server 2008 R2 S2008 R2 SP2에서 다음 문서 번호를 클릭 하 여 Microsoft 기술 자료 문서를 참조 하세요.
2797460 SQL Server 2008 R2 S2008 R2 SP2에 대 한 누적 업데이트 패키지 5참고 빌드가 누적 되므로 새로운 각 수정 릴리스에는 이전 SQL Server 2008 R2 S2008 R2 SP2 fix 릴리스의 모든 핫픽스와 모든 보안 수정 사항이 포함 되어 있습니다. 이 핫픽스를 포함 하는 최신 픽스 릴리스를 적용 하는 것이 좋습니다. 자세한 내용을 확인하려면 다음 문서 번호를 클릭하여 Microsoft 기술 자료 문서를 참조하십시오.
2730301 SQL Server 2008 R2 서비스 팩 2 이후 릴리스된 SQL Server 2008 R2 빌드가 릴리스 되었습니다.
상태
Microsoft는 "적용 대상" 절에 나열한 Microsoft 제품에서 이 문제를 확인했습니다.