Cloud SQL에서는 페이지로 나눈 보고서를 생성, 배포, 관리하는 데 도움이 되는 SQL Server Reporting Services(SSRS)를 지원합니다.
이 페이지에서는 Cloud SQL에서 SSRS를 사용하기 위한 기본 요건, 설정 절차, 제한사항을 제공합니다.
시작하기 전에
Cloud SQL에서 SSRS를 사용하려면 다음 요건을 충족해야 합니다.
- 보고서 서버 데이터베이스를 호스팅할 Cloud SQL 인스턴스
- SSRS를 설치하고 실행하는 호스트. Compute Engine VM 또는 Compute Engine을 사용하지 않는 호스트일 수 있습니다. 설치 안내는 SQL Server Reporting Services 설치를 참조하세요.
Cloud SQL 인스턴스의 호스트 이름을 할당하는 Cloud DNS 레코드 다음 옵션 중 하나를 사용하여 호스트 이름을 만들 수 있습니다.
- Cloud DNS: Cloud DNS를 사용하여 인스턴스를 가리키는 호스트 이름을 만듭니다.
- 커스텀 DNS 영역: 자체 DNS 영역을 관리하는 경우 원하는 호스트 이름을 인스턴스의 IP 주소에 매핑하는 A 레코드를 만듭니다.
- 로컬 호스트 이름 매핑: 시스템의
hosts
파일을 수정하여 인스턴스의 커스텀 별칭을 만듭니다.
두 개의 기존 Cloud SQL 로그인, 설정 로그인 및 서비스 로그인. 로그인을 만들려면
gcloud sql users create
를 참조하세요.Windows 인증을 사용하려면 관리형 Active Directory를 사용하여 SQL Server 인스턴스와 SSRS를 실행하는 호스트를 조인해야 합니다. 자세한 내용은 Cloud SQL에 관리형 Microsoft AD 사용을 참조하세요.
절차
Cloud SQL에서 SSRS를 설정하려면 다음 단계를 수행합니다.
SSRS 임대 획득
SSRS를 사용하려면 설정 중 승격된 권한이 필요합니다. 인스턴스에 대해 SSRS 임대를 획득하려면 다음 명령어를 사용합니다.
gcloud
다음 명령어를 사용하여 임대를 획득합니다.
gcloud sql instances acquire-ssrs-lease INSTANCE_NAME \ --project=PROJECT_NAME \ --setup-login=SETUP_LOGIN \ --service-login=SERVICE_LOGIN \ --report-database=REPORT_DATABASE \ --duration=DURATION \
다음 표에서는 이 작업의 gcloud
매개변수를 설명합니다.
매개변수 | 설명 | 허용되는 값 | 기본값 |
--setup-login |
필수 항목. SSRS 설정 중에 인스턴스에 연결하는 데 사용되는 로그인입니다. 이는 보고서 서버 데이터베이스를 설정할 때 보고서 서버 구성 관리자에서 요청하는 첫 번째 로그인입니다. | sqlserver 와 같은 기존 SQL Server 로그인이어야 합니다. |
없음 |
--service-login |
필수 항목. SSRS 설정 중 보고서 서버 데이터베이스에 연결하는 데 사용하는 SQL Server 로그인입니다. 이는 보고서 서버 데이터베이스를 설정할 때 보고서 서버 구성 관리자에서 요청되는 두 번째 로그인입니다. | 기존 SQL Server 로그인이어야 하며 설치 로그인과 달라야 합니다. | 없음. |
--report-database |
필수 항목. 인스턴스의 기존 또는 새 보고서 데이터베이스 이름입니다. | 보고서 데이터베이스 이름에 공백, 괄호, 영어 이외의 문자와 같은 특정 특수문자는 허용되지 않습니다. | 없음 |
--duration |
선택사항. SSRS 설정을 수행할 수 있는 SSRS 임대가 활성 상태인 시간입니다. | 1~12시간 사이입니다. 예를 들면 4h 입니다. |
5시간 |
REST v1
REST API를 사용하여 인스턴스에서 SSRS 임대를 획득할 수 있습니다. SSRS 임대를 획득하려면 다음을 지정합니다.- 서로 다른 SQL Server 로그인 두 개, 설정 로그인 및 서비스 로그인
- 보고서 데이터베이스 이름
- 임대 활성 기간
DURATION
필드만 선택사항입니다. 자세한 내용은
AcquireSsrsLeaseContext를 참조하세요.
- PROJECT_ID: 프로젝트 ID입니다.
- INSTANCE_NAME: 인스턴스 이름
- SETUP_LOGIN: SSRS 설정 중에 SQL Server 인스턴스에 연결하는 데 사용되는 SQL Server 로그인입니다. 이는 보고서 서버 데이터베이스를 설정할 때 보고서 서버 구성 관리자에서 요청하는 첫 번째 로그인입니다.
- SERVICE_LOGIN: SSRS 설정 중 보고서 서버 데이터베이스에 연결하는 데 사용하는 SQL Server 로그인입니다. 이는 보고서 서버 데이터베이스를 설정할 때 보고서 서버 구성 관리자에서 요청되는 두 번째 로그인입니다.
- REPORT_DATABASE: 인스턴스의 기존 또는 새 보고서 데이터베이스 이름입니다. Microsoft에서는 보고서 데이터베이스 이름에 공백, 괄호, 영어 이외의 문자와 같은 특정 특수문자를 허용하지 않습니다.
- DURATION: (선택사항) SSRS 설정을 수행할 수 있는 SSRS 임대가 활성 상태인 시간입니다.
1~12시간 사이입니다(예:
4h
).
HTTP 메서드 및 URL:
POST https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/instances/INSTANCE_NAME/acquireSsrsLease
JSON 요청 본문:
{ "acquireSsrsLeaseContext": { "setupLogin": SETUP_LOGIN, "serviceLogin": SERVICE_LOGIN, "reportDatabase": REPORT_DATABASE, "duration": DURATION, } }
REST v1beta4
REST API를 사용하여 인스턴스에서 SSRS 임대를 획득할 수 있습니다. SSRS 임대를 획득하려면 다음을 지정합니다.- 서로 다른 SQL Server 로그인 두 개, 설정 로그인 및 서비스 로그인
- 보고서 데이터베이스 이름
- 임대 활성 기간
DURATION
필드만 선택사항입니다. 자세한 내용은
AcquireSsrsLeaseContext를 참조하세요.
- PROJECT_ID: 프로젝트 ID입니다.
- INSTANCE_NAME: 인스턴스 이름
- SETUP_LOGIN: SSRS 설정 중에 SQL Server 인스턴스에 연결하는 데 사용되는 SQL Server 로그인입니다. 이는 보고서 서버 데이터베이스를 설정할 때 보고서 서버 구성 관리자에서 요청하는 첫 번째 로그인입니다.
- SERVICE_LOGIN: SSRS 설정 중 보고서 서버 데이터베이스에 연결하는 데 사용하는 SQL Server 로그인입니다. 이는 보고서 서버 데이터베이스를 설정할 때 보고서 서버 구성 관리자에서 요청되는 두 번째 로그인입니다.
- REPORT_DATABASE: 인스턴스의 기존 또는 새 보고서 데이터베이스 이름입니다. Microsoft에서는 보고서 데이터베이스 이름에 공백, 괄호, 영어 이외의 문자와 같은 특정 특수문자를 허용하지 않습니다.
- DURATION: (선택사항) SSRS 설정을 수행할 수 있는 SSRS 임대가 활성 상태인 시간입니다.
1~12시간 사이입니다(예:
4h
).
HTTP 메서드 및 URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME/acquireSsrsLease
JSON 요청 본문:
{ "acquireSsrsLeaseContext": { "setupLogin": SETUP_LOGIN, "serviceLogin": SERVICE_LOGIN, "reportDatabase": REPORT_DATABASE, "duration": DURATION, } }
SSRS 설정
SSRS 설정을 수행하려면 다음 단계를 따르세요.
- SSRS가 설치된 호스트에서 Reporting Services 구성 관리자를 엽니다.
- 로컬 보고서 서버 인스턴스에 연결합니다.
- 데이터베이스 변경을 클릭합니다.
- Cloud DNS에 생성된 SQL Server 호스트 이름과 SSRS 임대에 사용된 설정 로그인의 SQL Server 로그인 사용자 인증 정보를 입력합니다.
- 새 보고서 서버 데이터베이스 또는 SSRS 임대에 사용된 기존 보고서 데이터베이스의 이름을 입력합니다.
- SSRS 임대에 사용된 서비스 로그인의 SQL Server 로그인 사용자 인증 정보를 입력합니다.
- 다음을 클릭하고 마지막 단계를 완료합니다.
- 아직 설정하지 않았으면 웹 서비스 URL 및 웹 포털 URL을 구성합니다. 웹 포털이 몇 초 내에 성공적으로 로드됩니다.
SSRS 임대 해제
임대를 수동으로 해제하거나 임대가 자동으로 만료될 때까지 기다릴 수 있습니다. 설정에 필요한 승격된 권한을 되돌리고 서비스 로그인이 보고서 데이터베이스에 연결하도록 허용하려면 임대를 해제해야 합니다. 임대가 만료되거나 수동으로 해제될 때까지 서비스 로그인은 보고서 데이터베이스에 액세스할 수 없습니다. 다음 명령어는 SSRS 임대를 해제합니다.
gcloud
다음 명령어를 사용하여 임대를 해제합니다.
gcloud sql instances release-ssrs-lease INSTANCE_NAME \ --project=PROJECT_NAME
REST v1
REST API를 사용하여 인스턴스의 SSRS 임대를 해제할 수 있습니다. 다음 요청 예시에 표시된 것처럼 인스턴스 이름과 프로젝트 ID만 제공하면 됩니다.
- PROJECT_ID: 프로젝트 ID입니다.
- INSTANCE_NAME: 인스턴스 이름
HTTP 메서드 및 URL:
POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME/releaseSsrsLease
REST v1beta4
REST API를 사용하여 인스턴스의 SSRS 임대를 해제할 수 있습니다. 다음 요청 예시에 표시된 것처럼 인스턴스 이름과 프로젝트 ID만 제공하면 됩니다.
- PROJECT_ID: 프로젝트 ID입니다.
- INSTANCE_NAME: 인스턴스 이름
HTTP 메서드 및 URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME/releaseSsrsLease
제한사항
- 보고서 데이터베이스 설정에는 Active Directory 로그인이 지원되지 않습니다.
- 보고서 데이터베이스 이름에는 영숫자 문자와 하이픈만 포함할 수 있습니다.
- 보고서 서버 구성 관리자를 통해 보고서 데이터베이스에 연결하는 데 사용되는 로그인을 변경하려면 임대를 획득해야 합니다.
- 서비스 로그인으로 처리되는 데이터베이스의 경우 SSRS 설정 완료와 임대 해제 사이에 sql 파일 가져오기 및 복제된 데이터베이스 삭제 작업이 실패할 수 있습니다.
- 가져온 보고서 데이터베이스에서 서비스 로그인을 위한 데이터베이스 사용자를 삭제하고 다시 만들어야 합니다. 이는 가져온 데이터베이스의 기존 사용자가 새 인스턴스에 속하지 않기 때문입니다.
- SSRS에서 수평 확장 배포를 위해 새 보고서 서버를 추가할 때는 보고서 서버를 호스팅하는 모든 새 Windows VM에 대해 SSRS 임대를 획득하고 해제해야 합니다. 각 Cloud SQL 인스턴스에서 기존 보고서 데이터베이스를 사용하여 새 보고서 데이터베이스를 구성해야 합니다.
- 보고서 서버 구성 관리자에서 보고서 서버 데이터베이스의 로그인 사용자 인증 정보를 변경할 때마다 새 임대를 생성해야 합니다.