SQL Server Reporting Services (SSRS)

O Cloud SQL suporta os SQL Server Reporting Services (SSRS), que ajudam a criar, implementar e gerir relatórios paginados.

Esta página fornece os pré-requisitos, o procedimento de configuração e as limitações para usar o SSRS no Cloud SQL.

Antes de começar

Antes de usar o SSRS no Cloud SQL, tem de ter o seguinte:

  • Uma instância do Cloud SQL para alojar a base de dados do servidor de relatórios
  • Um anfitrião onde instala e executa o SSRS. Pode ser uma VM do Compute Engine ou um anfitrião que não usa o Compute Engine. Para ver instruções de instalação, consulte o artigo Instale os SQL Server Reporting Services.
  • Um registo do Cloud DNS para atribuir um nome de anfitrião à sua instância do Cloud SQL. Pode criar um nome de anfitrião através de uma das seguintes opções:

    • Cloud DNS: use o Cloud DNS para criar um nome de anfitrião que aponte para a sua instância.
    • Zona DNS personalizada: se gerir a sua própria zona DNS, crie um registo A que mapeie o seu nome do anfitrião preferido para o endereço IP da sua instância.
    • Mapeamento do nome do anfitrião local: modifique o ficheiro hosts do seu sistema para criar um alias personalizado para a sua instância.
  • Dois inícios de sessão do Cloud SQL existentes, um início de sessão de configuração e um início de sessão de serviço. Para criar um início de sessão, consulte gcloud sql users create.

    Se quiser usar a autenticação do Windows, tem de usar o Managed Active Directory para associar a instância do SQL Server e o anfitrião que executa o SSRS. Para mais informações, consulte o artigo Use o Microsoft AD gerido com o Cloud SQL.

Procedimento

Para configurar o SSRS no Cloud SQL, siga estes passos:

  1. Adquirir uma concessão SSRS.
  2. Configure o SSRS.
  3. Libertar uma concessão de SSRS.

Adquira uma concessão de SSRS

O SSRS requer autorizações elevadas durante a configuração. Para adquirir uma concessão de SSRS para a sua instância, use o seguinte comando:

gcloud

Use o seguinte comando para adquirir uma concessão:

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 \

A tabela seguinte descreve os parâmetros gcloud desta operação:

Parâmetro Descrição Valores permitidos Valor predefinido
--setup-login Obrigatório. O início de sessão usado para estabelecer ligação à instância durante a configuração do SSRS. Este é o primeiro início de sessão pedido no Gestor de configuração do servidor de relatórios quando define uma base de dados do servidor de relatórios. Tem de ser um início de sessão do SQL Server existente, como sqlserver Nenhum
--service-login Obrigatório. O início de sessão do SQL Server usado pelo servidor de relatórios para estabelecer ligação à base de dados do servidor de relatórios durante a configuração do SSRS. Este é o segundo início de sessão pedido no Gestor de configuração do servidor de relatórios quando define uma base de dados do servidor de relatórios. Tem de ser um início de sessão do SQL Server existente e tem de ser diferente do início de sessão de configuração. Nenhum.
--report-database Obrigatório. Um nome de base de dados de relatórios existente ou novo na instância. Determinados carateres especiais não são permitidos no nome da base de dados de relatórios, como espaços, parênteses e carateres não ingleses. Nenhum
--duration Opcional. O número de horas durante as quais a concessão do SSRS está ativa e durante as quais pode realizar a configuração do SSRS. Entre 1 e 12 horas. Por exemplo, 4h 5 horas

REST v1

Com a API REST, pode adquirir uma concessão SSRS numa instância. Para adquirir uma concessão de SSRS, especifique o seguinte:
  • Dois inícios de sessão diferentes do SQL Server: o início de sessão de configuração e o início de sessão de serviço
  • O nome da base de dados de relatórios
  • A duração durante a qual a concessão está ativa

Apenas o campo DURATION é opcional. Para mais informações, consulte AcquireSsrsLeaseContext:

  • PROJECT_ID: o ID do projeto.
  • INSTANCE_NAME: o nome da instância.
  • SETUP_LOGIN: o início de sessão do SQL Server usado para estabelecer ligação à instância do SQL Server durante a configuração do SSRS. Este é o primeiro início de sessão pedido no Gestor de configuração do servidor de relatórios quando define uma base de dados do servidor de relatórios.
  • SERVICE_LOGIN: o início de sessão do SQL Server usado pelo servidor de relatórios para estabelecer ligação à base de dados do servidor de relatórios durante a configuração do SSRS. Este é o segundo início de sessão pedido no Gestor de configuração do servidor de relatórios quando define uma base de dados do servidor de relatórios.
  • REPORT_DATABASE: um nome de base de dados de relatórios existente ou novo na instância. A Microsoft não permite determinados carateres especiais no nome da base de dados de relatórios, como espaços, parênteses e carateres que não sejam ingleses.
  • DURATION: opcional. O número de horas durante as quais a concessão do SSRS está ativa e durante as quais pode realizar a configuração do SSRS. Entre 1 e 12 horas, por exemplo, 4h.

Método HTTP e URL:

POST https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/instances/INSTANCE_NAME/acquireSsrsLease

Corpo JSON do pedido:

{
  "acquireSsrsLeaseContext": {
    "setupLogin": SETUP_LOGIN,
    "serviceLogin": SERVICE_LOGIN,
    "reportDatabase": REPORT_DATABASE,
    "duration": DURATION,
  }
}

REST v1beta4

Através da API REST, pode adquirir uma concessão SSRS numa instância. Para adquirir uma concessão de SSRS, especifique o seguinte:
  • Dois inícios de sessão diferentes do SQL Server: o início de sessão de configuração e o início de sessão de serviço
  • O nome da base de dados de relatórios
  • A duração durante a qual a concessão está ativa

Apenas o campo DURATION é opcional. Para mais informações, consulte AcquireSsrsLeaseContext:

  • PROJECT_ID: o ID do projeto.
  • INSTANCE_NAME: o nome da instância.
  • SETUP_LOGIN: o início de sessão do SQL Server usado para estabelecer ligação à instância do SQL Server durante a configuração do SSRS. Este é o primeiro início de sessão pedido no Gestor de configuração do servidor de relatórios quando define uma base de dados do servidor de relatórios.
  • SERVICE_LOGIN: o início de sessão do SQL Server usado pelo servidor de relatórios para estabelecer ligação à base de dados do servidor de relatórios durante a configuração do SSRS. Este é o segundo início de sessão pedido no Gestor de configuração do servidor de relatórios quando define uma base de dados do servidor de relatórios.
  • REPORT_DATABASE: um nome de base de dados de relatórios existente ou novo na instância. A Microsoft não permite determinados carateres especiais no nome da base de dados de relatórios, como espaços, parênteses e carateres que não sejam ingleses.
  • DURATION: opcional. O número de horas durante as quais a concessão do SSRS está ativa e durante as quais pode realizar a configuração do SSRS. Entre 1 e 12 horas, por exemplo, 4h.

Método HTTP e URL:

POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME/acquireSsrsLease

Corpo JSON do pedido:

{
  "acquireSsrsLeaseContext": {
    "setupLogin": SETUP_LOGIN,
    "serviceLogin": SERVICE_LOGIN,
    "reportDatabase": REPORT_DATABASE,
    "duration": DURATION,
  }
}

Configure o SSRS

Para fazer a configuração do SSRS, siga estes passos:

  1. Abra o Reporting Services Configuration Manager no anfitrião onde o SSRS está instalado.
  2. Ligue-se à sua instância do servidor de relatórios local.
  3. Clique em Alterar base de dados.
    1. Introduza o nome de anfitrião do SQL Server criado no Cloud DNS e as credenciais de início de sessão do SQL Server para o início de sessão de configuração usado para a concessão do SSRS.
    2. Introduza o nome de uma nova base de dados do servidor de relatórios ou de uma base de dados de relatórios existente usada para a concessão do SSRS.
    3. Introduza as credenciais de início de sessão do SQL Server para o início de sessão do serviço usado para a concessão do SSRS.
    4. Clique em Seguinte e conclua o último passo.
  4. Se ainda não estiver definido, configure o URL do serviço Web e o URL do portal Web. O portal Web deve ser carregado com êxito em poucos segundos.

Libertar uma concessão de SSRS

Pode libertar uma atribuição manualmente ou aguardar até que expire automaticamente. A libertação da concessão é necessária para reverter quaisquer autorizações elevadas necessárias para a configuração e para permitir que o início de sessão do serviço se ligue à base de dados de relatórios. O início de sessão do serviço não pode aceder à base de dados de relatórios até que a concessão expire ou seja libertada manualmente. O seguinte comando liberta uma concessão de SSRS.

gcloud

Use o seguinte comando para libertar uma concessão:

gcloud sql instances release-ssrs-lease INSTANCE_NAME \
--project=PROJECT_NAME

REST v1

Através da API REST, pode libertar uma concessão SSRS para uma instância. Conforme mostrado no exemplo de pedido seguinte, só tem de indicar o nome da instância e o ID do projeto.

  • PROJECT_ID: o ID do projeto.
  • INSTANCE_NAME: o nome da instância.

Método HTTP e URL:

POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME/releaseSsrsLease

REST v1beta4

Através da API REST, pode libertar uma concessão SSRS para uma instância. Conforme mostrado no exemplo de pedido seguinte, só tem de indicar o nome da instância e o ID do projeto.

  • PROJECT_ID: o ID do projeto.
  • INSTANCE_NAME: o nome da instância.

Método HTTP e URL:

POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME/releaseSsrsLease

Limitações

  • Os inícios de sessão do Active Directory não são suportados para configurar a base de dados de relatórios.
  • O nome da base de dados de relatórios só pode conter carateres alfanuméricos e hífenes.
  • Tem de adquirir uma concessão para alterar o início de sessão usado para estabelecer ligação à base de dados de relatórios através do Gestor de configuração do servidor de relatórios.
  • Para uma base de dados processada por um início de sessão de serviço, as operações de importação de ficheiros SQL e de eliminação da base de dados replicada podem falhar entre a conclusão da configuração do SSRS e a libertação da concessão.
  • Tem de eliminar e recriar o utilizador da base de dados para o início de sessão do serviço numa base de dados de relatórios importada. Isto deve-se ao facto de o utilizador existente na base de dados importada não pertencer à nova instância.
  • Quando adiciona novos servidores de relatórios para uma implementação de expansão horizontal no SSRS, tem de adquirir e libertar a concessão do SSRS para cada nova VM do Windows que aloja um servidor de relatórios. Cada instância do Cloud SQL requer que configure a nova base de dados de relatórios através da base de dados de relatórios existente.
  • Tem de criar uma nova concessão sempre que quiser alterar as credenciais de início de sessão para a base de dados do servidor de relatórios no Gestor de configuração do servidor de relatórios.

Perguntas frequentes

As secções seguintes ajudam a abordar as Perguntas frequentes relacionadas com o SSRS.

Configuração e mecanismo de alocação

As secções seguintes ajudam a resolver questões de configuração e de aluguer de SSRS.

Como posso configurar o SSRS com o Cloud SQL?

Tem de instalar o SSRS num anfitrião Windows separado, como uma VM do Compute Engine. Em seguida, configure o SSRS para usar a sua instância do Cloud SQL para as bases de dados ReportServer e ReportServerTempDB. O "SSRS lease" é uma parte importante deste processo se estiver a gerir a configuração através do Cloud SQL.

O que é a concessão de SSRS e por que motivo é necessária?

Normalmente, a configuração do SSRS requer autorizações sysadmin, que não são concedidas aos utilizadores no Cloud SQL. O mecanismo de concessão concede temporariamente as autorizações elevadas necessárias a um início de sessão do SQL Server especificado, por exemplo, --setup-login, para concluir a configuração da base de dados.

Adquire uma concessão através de gcloud sql instances acquire-ssrs-lease antes da configuração e liberta-a posteriormente com gcloud sql instances release-ssrs-lease. A concessão tem uma duração configurável.

Autenticação

A secção seguinte ajuda a responder a perguntas sobre a autenticação.

Não, tem de usar inícios de sessão do SQL Server para os parâmetros --setup-login e --service-login quando adquirir a concessão e configurar a base de dados do servidor de relatórios. Os inícios de sessão do Windows não são suportados para este processo de configuração inicial.

Embora a configuração exija inícios de sessão SQL, pode usar potencialmente a autenticação do Windows para aceder a relatórios se a sua instância do Cloud SQL e o anfitrião do SSRS estiverem ambos associados a um dos seguintes tipos de domínio:

Restrições

A secção seguinte ajuda a responder a perguntas relacionadas com restrições ou limitações.

Quais são as limitações da utilização do SSRS com o Cloud SQL?

  • Não existem inícios de sessão do Microsoft Active Directory para a fase de configuração da base de dados.
  • O nome da base de dados de relatórios só pode conter carateres alfanuméricos e hífenes.
  • Tem de adquirir uma nova concessão se quiser alterar as credenciais da conta de serviço mais tarde.
  • As implementações de expansão requerem o processo de concessão para cada novo anfitrião do SSRS.
  • A importação de bases de dados do servidor de relatórios existentes requer passos manuais para remapear o utilizador de início de sessão do serviço.

Considerações sobre os preços

A secção seguinte ajuda a abordar as considerações sobre os preços.

Quais são os custos associados ao licenciamento?

  • É necessária uma licença do SQL Server para a sua instância do Cloud SQL.
  • Uma vez que o SSRS é executado numa máquina Windows separada, certifique-se de que o SO Windows e todos os componentes do SQL Server nessa máquina têm as licenças adequadas. De acordo com as políticas da Microsoft, a execução do SSRS num servidor separado pode exigir uma licença adicional do SQL Server.

Automatização

A secção seguinte ajuda a responder a perguntas relacionadas com a automatização.

Pode automatizar o processo de instalação e configuração do anfitrião do SSRS?

Pode executar operações para adquirir e libertar a concessão do SSRS no Cloud SQL através da CLI gcloud ou das APIs REST.

A instalação e a configuração do SSRS no próprio ambiente Windows envolvem normalmente passos manuais através da interface do Reporting Services Configuration Manager, o que torna a automatização completa ponto a ponto mais difícil.

Para mais informações, consulte o artigo Instale e configure o SSRS.

Manutenção

A secção seguinte ajuda a responder a perguntas relacionadas com a manutenção.

Quais são as potenciais atividades de gestão e manutenção associadas à utilização do SSRS?

Antes de começar, considere a sobrecarga de gestão contínua associada ao servidor SSRS separado. É responsável por gerir, aplicar patches e proteger a VM do Windows que executa o serviço SSRS. O Cloud SQL só gere a instância da base de dados.