Atualizar um aplicativo para usar a biblioteca cliente de banco de dados elástico mais recente

Aplica-se a:Banco de Dados SQL do Azure

Novas versões da biblioteca de cliente do Banco de Dados Elástico estão disponíveis por meio do NuGet e da interface do Gerenciador de Pacotes NuGet no Visual Studio. As atualizações contêm correções de bugs e suporte para novos recursos da biblioteca do cliente.

Para obter a versão mais recente: Vá para Microsoft.Azure.SqlDatabase.ElasticScale.Client.

Recrie seu aplicativo com a nova biblioteca e altere os metadados existentes do Shard Map Manager armazenados em seus bancos de dados no Banco de Dados SQL do Azure para dar suporte a novos recursos.

Executar essas etapas em ordem garante que as versões antigas da biblioteca do cliente não estejam mais presentes em seu ambiente quando os objetos de metadados forem atualizados, o que significa que os objetos de metadados da versão antiga não serão criados após a atualização.

Etapas de atualização

1. Atualize as suas aplicações. No Visual Studio, baixe e faça referência à versão mais recente da biblioteca do cliente em todos os seus projetos de desenvolvimento que usam a biblioteca; Em seguida, reconstrua e implante.

  • Em sua solução Visual Studio, selecione Ferramentas --Gerenciador de Pacotes NuGet -->>Gerenciar Pacotes NuGet para Solução.
  • (Visual Studio 2013) No painel esquerdo, selecione Atualizações e, em seguida, selecione o botão Atualizar no pacote Biblioteca de Cliente de Escala Elástica do Banco de Dados SQL do Azure que aparece na janela.
  • (Visual Studio 2015) Defina a caixa Filtro para Atualização disponível. Selecione o pacote a ser atualizado e selecione o botão Atualizar .
  • (Visual Studio 2017) Na parte superior da caixa de diálogo, selecione Atualizações. Selecione o pacote a ser atualizado e selecione o botão Atualizar .
  • Crie e implante.

2. Atualize seus scripts. Se você estiver usando scripts do PowerShell para gerenciar fragmentos, baixe a nova versão da biblioteca e copie-a para o diretório a partir do qual você executa scripts.

3. Atualize seu serviço de mesclagem dividida. Se você usar a ferramenta de mesclagem dividida do banco de dados elástico para reorganizar dados fragmentados, baixe e implante a versão mais recente da ferramenta. Etapas detalhadas de atualização para o Serviço podem ser encontradas aqui.

4. Atualize seus bancos de dados do Shard Map Manager. Atualize os metadados que suportam os seus Mapas de Fragmentos na Base de Dados SQL do Azure. Há duas maneiras de fazer isso, usando PowerShell ou C#. Ambas as opções são mostradas abaixo.

Opção 1: Atualizar metadados usando o PowerShell

  1. Baixe o utilitário de linha de comando mais recente para o NuGet aqui e salve em uma pasta.
  2. Abra um prompt de comando, navegue até a mesma pasta e emita o comando: nuget install Microsoft.Azure.SqlDatabase.ElasticScale.Client
  3. Navegue até a subpasta que contém a nova versão da DLL do cliente que você baixou, por exemplo: cd .\Microsoft.Azure.SqlDatabase.ElasticScale.Client.1.0.0\lib\net45
  4. Baixe o script de atualização do cliente de banco de dados elástico da Central de Scripts e salve-o na mesma pasta que contém a DLL.
  5. A partir dessa pasta, execute PowerShell .\upgrade.ps1 a partir do prompt de comando e siga os prompts.

Opção 2: Atualizar metadados usando C#

Como alternativa, crie um aplicativo Visual Studio que abra seu ShardMapManager, itere em todos os fragmentos e execute a atualização de metadados chamando os métodos UpgradeLocalStore e UpgradeGlobalStore como neste exemplo:

    ShardMapManager smm =
       ShardMapManagerFactory.GetSqlShardMapManager
       (connStr, ShardMapManagerLoadPolicy.Lazy);
    smm.UpgradeGlobalStore();

    foreach (ShardLocation loc in
     smm.GetDistinctShardLocations())
    {
       smm.UpgradeLocalStore(loc);
    }

Essas técnicas para atualizações de metadados podem ser aplicadas várias vezes sem danos. Por exemplo, se uma versão de cliente mais antiga criar inadvertidamente um fragmento depois de já ter atualizado, você poderá executar a atualização novamente em todos os fragmentos para garantir que a versão de metadados mais recente esteja presente em toda a sua infraestrutura.

Nota: As novas versões da biblioteca de cliente publicadas até à data continuam a funcionar com versões anteriores dos metadados do Shard Map Manager na Base de Dados SQL do Azure e vice-versa. No entanto, para aproveitar alguns dos novos recursos no cliente mais recente, os metadados precisam ser atualizados. As atualizações de metadados não afetarão os dados do usuário ou dados específicos do aplicativo, apenas os objetos criados e usados pelo Gerenciador de Mapas de Fragmentos. E os aplicativos continuam a operar através da sequência de atualização descrita acima.

Histórico de versões do Elastic database client

Para obter o histórico de versões, vá para Microsoft.Azure.SqlDatabase.ElasticScale.Client

Recursos adicionais

Ainda não está usando ferramentas de banco de dados elástico? Consulte o nosso Guia de Introdução. Para dúvidas, entre em contato conosco na página de perguntas e respostas da Microsoft para o Banco de dados SQL e para solicitações de recursos, adicione novas ideias ou vote em ideias existentes no fórum de comentários do Banco de dados SQL.