Atualizar um banco de dados do servidor de relatório
O banco de dados do servidor de relatório fornece armazenamento para uma ou mais instâncias do servidor de relatório. Como o esquema do banco de dados do servidor de relatório pode ser alterado a cada versão nova do Reporting Services, é necessário que a versão do banco de dados corresponda à versão da instância do servidor de relatório que você está usando. Na maioria dos casos, um banco de dados do servidor de relatório pode ser atualizado automaticamente sem ação específica de sua parte.
Modo nativo: no modo nativo do Reporting Services, o banco de dados do servidor de relatório é realmente composto de dois bancos de dados que têm os nomes padronizados ReportServer e ReportServerTempDB.
Modo do SharePoint: no modo do SharePoint do SQL Server 2016 Reporting Services, o banco de dados do servidor de relatório é, na verdade, uma coleção de bancos de dados que foi criada para cada instância do aplicativo do serviço do Reporting Services.
Maneiras de atualizar um banco de dados do servidor de relatório de modo nativo
A seguinte lista identifica as condições nas quais um banco de dados do servidor de relatório é atualizado:
A Instalação do SQL Server atualiza uma única instância de um servidor de relatório. O esquema de banco de dados do servidor de relatório é atualizado automaticamente após a inicialização do serviço, e o servidor de relatório determina que a versão do esquema de banco de dados não corresponde à do servidor.
Durante a inicialização do serviço, o servidor de relatório verifica se a versão do esquema de banco de dados corresponde à versão do servidor. Se a versão do esquema de banco de dados for mais antiga, ela será atualizada automaticamente para a versão de esquema exigida pelo servidor de relatório. A atualização automática é especialmente útil se você restaurou ou anexou um banco de dados de servidor de relatório mais antigo. Uma mensagem é inserida no arquivo de log de rastreamento do servidor de relatório, indicando que a versão do esquema de banco de dados foi atualizada.
O Gerenciador de Configurações do Reporting Services atualiza um banco de dados do servidor de relatório local ou remoto quando você seleciona uma versão mais antiga a ser usada com uma instância mais recente do servidor de relatório. Nesse caso, você deve confirmar a ação de atualização antes que ela aconteça.
O Gerenciador de Configurações do Reporting Services não fornece mais um botão Atualizar separado nem um script de atualização. Esses recursos ficaram obsoletos a partir do SQL Server 2008 (10.0.x) devido ao recurso de atualização automática do serviço Servidor de Relatório.
Depois que o esquema for atualizado, você não poderá reverter a atualização para uma versão anterior. Sempre faça backup do banco de dados do servidor de relatório, caso precise recriar uma instalação anterior.
Como o esquema, os metadados e o conteúdo do servidor de relatório são atualizados
O banco de dados do servidor de relatório é atualizado em três estágios:
O esquema é atualizado automaticamente após a instalação e a inicialização do serviço ou quando você seleciona um banco de dados do servidor de relatório do modo nativo do SQL Server no Gerenciador de Configurações do Reporting Services que é uma versão antiga. Além disso, o serviço do Servidor de Relatório verifica a versão do banco de dados durante a inicialização. Se o servidor de relatório estiver conectado a um banco de dados que seja de uma versão anterior, o servidor de relatório atualizará o banco de dados durante a inicialização.
Os descritores de segurança são atualizados durante o primeiro uso do banco de dados do servidor de relatório após a atualização do esquema.
Os relatórios publicados e os instantâneos de relatório compilados são atualizados durante o primeiro uso. Para obter mais informações, consulte Upgrade Reports.
Além do banco de dados do servidor de relatório, um servidor de relatório também usa um banco de dados temporário. O banco de dados temporário é atualizado automaticamente quando você atualiza o banco de dados do servidor de relatório.
Permissões necessárias para atualizar um banco de dados do Servidor de Relatório
Se você estiver atualizando uma instalação do SQL Server Reporting Services que contém um banco de dados do servidor de relatório, poderá ver uma mensagem de erro se a atualização do banco de dados for executada com permissões insuficientes. Por padrão, a Instalação usa o token de segurança do usuário que está executando o programa Instalação para se conectar à instância remota do SQL Server e atualizar o esquema. Se você tiver permissões sysadmin do SQL Server no servidor de banco de dados que hospeda os bancos de dados do servidor de relatório, a atualização do banco de dados será bem-sucedida. Da mesma maneira, se você executar a Instalação no prompt de comando e especificar os argumentos RSUPGRADEDATABASEACCOUNT e RSUPGRADEPASSWORD para uma conta que tem a permissão de sysadmin para modificar o esquema no computador remoto, a atualização do banco de dados será bem-sucedida.
Todavia, se você não tiver permissão de sysadmin no banco de dados do computador remoto, a conexão será recusada com o seguinte erro:
"Setup was not able to upgrade the report server database schema. You must update the database schema manually after setup is finished. To update the schema, run the Report Server Configuration Manager, open the Database Setup page, re-select the database, and click Apply. The database will be upgraded automatically."
Nesse ponto, os arquivos de programas do servidor de relatório serão atualizados, mas o banco de dados do servidor de relatório estará no formato da versão anterior. O servidor de relatório ficará indisponível até que você conclua o processo de atualização por meio da atualização manual do banco de dados.
Para atualizar um banco de dados de modo nativo com scripts
Você pode usar scripts do WMI para atualizar um banco de dados do servidor de relatórios. Para obter mais informações, confira Método GenerateDatabaseUpgradeScript (WMI MSReportServer_ConfigurationSetting)