노무현 전 대통령 서거 - 삼가 고인의 명복을 빕니다


'Microsoft SQL Server'에 해당되는 글 1건

  1. 2009.04.27 데이터베이스 복제 정보 삭제 방법
2009.04.27 17:09

데이터베이스 복제 정보 삭제 방법

기존에 복제 (게시 - 구독)을 수행했던 데이터베이스의 복제 기록이 완전히 삭제되지 않을 경우,
sp_repldone을 실행해도 "데이터베이스가 게시되지 않았습니다"라는 메시지를 표시된다.

이 경우, Transaction log를 Truncate하고자 할 때 아래 메시지를 표시하며 오류가 발생한다.
"로그 시작 부분의 레코드가 복제 보류 중이므로 로그가 잘리지 않았습니다.
 로그 판독기 에이전트가 실행중인지 확인하거나 sp_repldone을 사용하여
 트랜잭션이 분산된 것으로 표시하십시오."

이럴 때 해결방법은 당연하게도 "복제상태를 clear 하는 것"이 되겠다.

방법 1
sp_configure 'allow', 1
go
reconfigure with override
go

update master..sysdatabases set category = category ^ 1 WHERE name = {DBNAME}
go

use {DBNAME}
go
UPDATE sysobjects set replinfo = 0
go

EXEC sp_repldone NULL, NULL, 0, 0, 1
go

UPDATE master..sysdatabases set category = category & ~1 WHERE name = {DBNAME}
go

BACKUP LOG {DBNAME} WITH TRUNCATE_ONLY


방법 2
use {DBNAME}
go
sp_removedbreplication {DBNAME}
go

 

1번 방법으로 해봤는데 잘 되더라.
신고
Trackback 0 Comment 0


티스토리 툴바