연결된 서버는 SQL Server가 원격 데이터 소스에서 데이터를 읽고 원격 데이터베이스에서 명령어를 실행할 수 있는 기능을 제공합니다. 이 페이지에서는 Cloud SQL 인스턴스 권한, 연결된 서버를 구현할 때 고려해야 할 사항 및 연결된 서버 사용의 제한사항에 대한 정보를 제공합니다.
연결된 서버 인스턴스 권한
연결된 서버를 설정하려면 다음 인스턴스 및 사용자 권한이 필요합니다.
ALTER ANY LINKED SERVER
: Cloud SQL은 인스턴스에cloudsql enable linked servers
플래그를 추가할 때 이 권한을 부여합니다.ALTER ANY LOGIN
: Cloud SQL은 Cloud SQL 인스턴스의 관리 권한 사용자에게 이 권한을 자동으로 부여합니다. 이 권한을 사용하면 Cloud SQL의 로그인과 연결된 서버의 보안 계정 간의 매핑을 만들 수 있습니다.
Cloud SQL 인스턴스에 사용할 수 있는 기본 권한 목록은 기본 SQL Server 사용자를 참고하세요.
추가 계정에 ALTER ANY LINKED SERVER
또는 ALTER ANY
LOGIN
권한을 부여하는 방법에 관한 자세한 내용은 서버 권한 부여의 예를 참고하세요.
연결된 서버 사용 시 고려사항
이 섹션에는 연결된 서버의 보안, 성능, 안정성을 처리하기 위한 권장사항이 포함되어 있습니다.
보안
잠재적인 보안 취약점을 완화하려면 연결된 서버에 다음과 같은 강력한 보안 프로토콜이 적용되어 있는지 확인해야 합니다.
- SSL 암호화와 같은 적절한 인증 및 승인 메커니즘을 구현합니다.
- 엄격한 비밀번호 정책을 구현합니다.
- 승인된 사용자만 연결된 서버에 액세스할 수 있는지 확인합니다.
- 민감한 정보가 적절하게 암호화되고 보호되는지 확인합니다.
- 로그인이 구성 중에 사용하는 리소스에만 액세스할 수 있는지 확인합니다.
성능
연결된 서버의 성능에 영향을 줄 수 있는 요인은 다음과 같습니다.
- 연결된 서버는 각 서버가 전송하는 데이터 볼륨에 따라 쿼리가 복잡할 때 지연 시간을 발생시키고 성능을 저하시킬 수 있습니다. 이로 인해 실시간 데이터 동기화가 필요한 애플리케이션에 문제가 발생할 수 있습니다.
- 연결된 서버를 사용하여 쿼리를 실행하면 데이터베이스 엔진이 새 연결을 만들고 실행하는 모든 쿼리에 대한 데이터를 가져옵니다. 데이터는 캐시되지 않으며 연결된 서버를 사용할 때마다 서버가 네트워크 전반에서 전체 테이블을 복사할 수 있습니다.
- Cloud SQL은 원격 서버가 색인과 통계를 처리하는 방식을 알 수 없으므로 원격 서버에 대해 최적화된 실행 계획을 만들 수 없습니다.
성능을 최적화하려면 다음 단계를 따르세요.
- 쿼리를 신중하게 설계하고 서버 간에 필요한 데이터만 전송되는지 확인합니다.
- SQL Server 분산 쿼리 기능을 활용합니다.
- 여러 서버에 쿼리를 분산합니다.
- 연결된 서버 구성을 정기적으로 모니터링하고 최적화하여 원활하게 실행되도록 지원합니다.
신뢰성
서버 간 연결이 중단되거나 오류가 발생하면 심각한 다운타임 및 데이터 손실이 발생할 수 있습니다.
안정적인 작동을 보장하려면 적절한 페일오버 및 중복 메커니즘을 구현하는 것이 중요합니다. 여기에는 다음이 포함될 수 있습니다.
- 장애 조치를 위해 백업 연결된 서버를 구현합니다.
- 서버 가용성 및 성능을 모니터링합니다.
- 연결된 서버 구성을 정기적으로 테스트하고 확인합니다.
제한사항
Cloud SQL의 연결된 서버에는 다음과 같은 제한사항이 있습니다.
- 연결된 서버는 SQL Server 이외의 데이터 소스를 사용할 수 없습니다.
- 연결된 서버에는 Active Directory 인증을 사용할 수 없습니다.
연결된 서버에 대한 전체 제한사항 목록은 지원되지 않는 기능 및 서비스를 참조하세요.
다음 단계
- 연결된 서버 사용 설정, 추가, 구성하는 방법 알아보기