미러링 설정된 DB에 sa 계정이 아닌 일반 로그인 계정을 사용하여 로그인을 하려고 하면 아래와 같은 메시지가 뜬다.

 

Use of key 'Failover Partner' requires the key 'Initial Catalog' to be present. (Microsoft.Data.SqlClient)

> '장애 조치 파트너' 키를 사용하려면 '초기 카탈로그' 키가 있어야 합니다.

 

이 말 그대로 해석했어야 했는데,,, 괜히 삽질했다.

어렵게 가지 말자!!

 

SSMS에 접속시 4번째 탭 "추가 연결 매개 변수" 에 아래의 정보를 넣어주면 된다.

Initial Catalog=DBNAME

 

그럼 접속 잘된다~

(TEST 환경 : SSMS 20.2.30.0 / SQL Server 2022 EE)

SSMS 19 이하 버전에서는 다를 수도 있음...

 

참고 : https://github.com/dotnet/SqlClient/issues/2545

-- DB status reset 
EXEC sp_resetstatus 'DB명'

-- 응급 상태로 전환
ALTER DATABASE DB명 SET EMERGENCY

--DBCC 수행
DBCC checkdb(' DB명 ')

--싱글 유저로 바꿔서 접근 제한
ALTER DATABASE DB명 SET single_user WITH ROLLBACK IMMEDIATE

-- DB REPAIR
DBCC checkdb(' DB명 ', 옵션)

* REPAIR 옵션

1) REPAIR_FAST : 시간이 많이 소요되지않고, 데이터의 손실이 없는 사소한 오류를 수정 (클러스터되지 않은 인덱스 복구 가능)
2) REPAIR_REBUILD : REPAIR_FAST이 하는 모든 작업, 인덱스 재생성과 같이 시간이 소요되는 작업이 복구 과정에서 진행됨. 역시 데이터의 손실 위험은 없다.
3) REPAIR_ALLOW_DATA_LOSS : REPAIR_REBUILD이 하는 모든 작업, 할당 오류, 구조적 행 오류나 페이지 오류, 손상된 텍스트 개체 삭제를 수정하기 위한 행과 페이징의 할당 및 할당 취소 등의 작업이 행해진다.


-- 멀티 유저로 바꾸기
ALTER DATABASE DB명 SET MULTI_USER


'Database & SQL > SQL Server' 카테고리의 다른 글

[SQL Server] 미러링 된 DB에 접근시 SSMS 설정  (1) 2024.09.30

+ Recent posts