Partilhar via


Desanexando um banco de dados compartilhado evolutivo

No final, os dados de relatório se tornam muito desatualizados para serem úteis e o banco de dados de relatório é considerado obsoleto. A atualização de um banco de dados compartilhado evolutivo envolve um ciclo de atualização de três fases, que se inicia com a fase de desanexação. Essencialmente, a fase de desanexação envolve dexanexar um banco de dados de relatório obsoleto e desmontar os volumes de relatório dos servidores de relatório. Ao ser desanexado de uma instância de servidor especificado, o banco de dados de relatório obsoleto deixa de ser um banco de dados compartilhado evolutivo nessa instância de servidor.

Os passos da fase de desanexar

Nesta fase, você realizará o seguinte em cada um dos servidores de relatório:

  1. Opcionalmente, desabilite consultas novas no banco de dados e permita consultas atuais para completar normalmente. Para obter mais informações, consulte "Estratégias para a preparação sobre como desanexar um banco de dados obsoleto", a seguir neste tópico.

  2. Desanexe o banco de dados de cada instância de servidor.

    Você pode fazê-lo usando a seguinte instrução Transact-SQL:

    sp_detach_db @dbname='<database_name>'
    

    Onde <database_name> é o nome do banco de dados.

  3. Desmonte o conjunto de volumes de relatório em cada um dos servidores de relatório.

    Para desmontar um volume usando o utilitário de DISKPART, digite os seguintes comandos no prompt de comando:

    DISKPART

    DISKPART> selecionar volume=<drive-number>

    DISKPART> remover

    DISKPART> sair

    Onde <drive-letter> é a letra atribuída ao volume de relatório. Se o banco de dados usar vários volumes de relatório, execute essa etapa para cada um dos volumes.

  4. Mascare o número de unidade lógica (LUN) que corresponde ao volume de relatório para ocultá-lo dos servidores de relatório. Para fazer isso, use os utilitários de seu vendedor de hardware. Se o banco de dados usar vários volumes de relatório, execute essa etapa para cada um dos volumes.

ObservaçãoObservação

A fase de desanexar é a primeira fase de um ciclo de atualização para um determinado conjunto de volumes de relatório. Porém, você pode usar dois conjuntos alternativos de volumes de relatório para as versões recentes e obsoletas de um banco de dados de relatório. Isso lhe permite sobrepor as fases de atualização e desanexação dos dois conjuntos de volumes. Para obter mais informações, consulte Maximizando a disponibilidade de um banco de dados compartilhado evolutivo.

Estratégias para a preparação sobre como desanexar um banco de dados obsoleto

Ao substituir a versão obsoleta de um banco de dados, é importante considerar os requisitos empresariais para seu ambiente de relatório. Você deveria avaliar qual dos requisitos empresariais seguintes é mais importante: permitir executar consultas atuais para completar ou concluir a atualização tão rápido quanto possível.

Baseado no requisito mais importante, é possível decidir como gerenciar a fase de desanexar em cada um de seus servidores de relatório.

  • Permitindo consultas para completar

    Para preservar todas as consultas em desenvolvimento, comece a fase de desanexar parando o fluxo de transações ao banco de dados, por exemplo, parando atividade de I/O. Depois, em cada instância de servidor, espere que todas as consultas atuais estejam completas. Quando o banco de dados for desanexado de todas as instâncias de servidor, é possível desmontar o volume de relatório.

  • Atualizando o banco de dados tão rápido quanto possível

    Para completar a atualização rapidamente, obtenha acesso exclusivo ao banco de dados em cada uma das instâncias de servidor terminando consultas imediatamente ou após um número de segundos especificado. Consultas encerradas podem reinicializar depois que uma versão atualizada do banco de dados seja anexada.

    Por exemplo, dar à consulta atual 60 segundos para completar antes de encerrar qualquer consulta restante, use a seguinte instrução Transact-SQL:

    USE master;
    ALTER DATABASE AdventureWorks2008R2
    SET SINGLE_USER
    WITH ROLLBACK AFTER 60;
    GO
    

    Agora você pode desanexar o banco de dados de cada uma das instâncias de servidor e desmontar os volumes ou volume de relatório de cada um dos servidores de relação.

Para obter mais informações, consulte ALTER DATABASE (Transact-SQL).

Neste momento, o conjunto desmontado de volumes de relatório está pronto para a construção ou fase de atualização de seu próximo ciclo de atualização.

Alternativamente, antes de começar a fase de desanexar no conjunto montado de volumes de relatório atual, você pode atualizar o banco de dados em um conjunto alternado de volumes de relatório. Para obter mais informações, consulte Maximizando a disponibilidade de um banco de dados compartilhado evolutivo.