한 데이터베이스를 페일 오버하면 동일한 미러 엔드 포인트를 공유하는 다른 페일 오버도 페일 오버됩니까?


11

단일 SQL Server 인스턴스에서 미러링을위한 두 개의 데이터베이스, 테스트 데이터베이스와 프로덕션 데이터베이스가 있습니다. 둘 다 정확히 동일한 엔드 포인트를 사용하여 다른 서버에 미러링됩니다.

테스트 데이터베이스의 데이터베이스 속성으로 이동하여 "장애 조치"버튼을 클릭하면 두 데이터베이스가 미러 엔드 포인트를 공유하고 서버 네트워크 주소 속성이 동일하므로 프로덕션 데이터베이스를 페일 오버 할 수 있습니까?

여기에 이미지 설명을 입력하십시오

두 번째 데이터베이스에 대한 미러링을 설정할 때 새로운 것을 구성 할 필요가 없기 때문에 걱정됩니다. 방금 기존 정보를 모두 사용했습니다.

Database Properties에서 "Failover"버튼을 사용하면 해당 엔드 포인트를 사용하는 모든 데이터베이스 나 속성을보고있는 특정 데이터베이스에서 장애 조치가 발생합니까?

답변:


19

@mrdenny의 대답 은 하나의 데이터베이스를 장애 조치 해도 다른 모든 데이터베이스도 장애 조치 하지는 않는다는 것입니다.

그러나 데이터베이스 미러링 끝 점이 무엇인지에 대한 자세한 개요를 제공하려면 다음을 수행하십시오.

에서 BOL ,

Microsoft SQL Server 2005 이상 버전의 연결 관리는 엔드 포인트를 기반으로합니다. 끝점은 SQL Server가 네트워크를 통해 통신 할 수 있도록하는 SQL Server 개체입니다. 데이터베이스 미러링의 경우 서버 인스턴스에는 고유 한 전용 데이터베이스 미러링 끝 점이 필요합니다. 서버 인스턴스의 모든 미러링 연결은 단일 데이터베이스 미러링 끝점을 사용합니다. 이 엔드 포인트는 다른 서버 인스턴스에서 데이터베이스 미러링 연결을 수신하기 위해 독점적으로 사용되는 특수 목적 엔드 포인트입니다.

보다 유연하게하기 위해 수동 장애 조치를 수행하기 위해 T-sql을 사용할 수 있습니다.

미러 DB에서 미러링을 끕니다 (미러 중단).

ALTER DATABASE <<DB NAME>> SET PARTNER OFF

복구 모드를 DB를 RECOVERY로 설정하십시오.

RESTORE DATABASE <<DB NAME>> WITH RECOVERY

SQL 인증을 사용중인 경우 수정 및 고아 사용자

EXEC sp_change_users_login Auto_Fix , ‘<<username>>’

편집하다:

스크린 샷에 따라 높은 안전 모드를 사용하므로 주 서버에서 다음을 사용할 수 있습니다.

ALTER DATABASE <<DB NAME>> SET PARTNER FAILOVER

그렇게하면 역할 반전 만 발생하고 미러링 방향이 반대로됩니다. 주체는 미러가되고 그 반대도 마찬가지입니다. MIRRORING은 깨진 것이 아닙니다.

당 참고 이 MSDN 문서를

수동 장애 조치는 주 서버에서만 시작할 수 있습니다.

전체 장애 조치를 자동화하려면 데이터베이스 미러링 자동화 를 참조하십시오.


8

아닙니다. 데이터베이스는 서로 독립적으로 장애 조치됩니다. 테스트 데이터베이스에 장애가 발생하지 않으며 프로덕션 데이터베이스는 그대로 유지됩니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.