10 de atualização cumulativa para SQL Server 2017

Aplica-se a: SQL Server 2017 on Windows (all editions)SQL Server 2017 on Linux (all editions)

Este artigo descreve o pacote de atualizações cumulativas 10 (CU10) para SQL Server 2017. Esta atualização contém correções que foram lançadas após o lançamento inicial do SQL Server 2017 e atualiza o SQL Server e componentes para as seguintes versões do Analysis services:

Componente Versão da compilação Versão do arquivo
SQL Server 14.0.3037.1 2017.140.3037.1
Analysis Services 14.0.226.1 2017.140.226.1

 

Este artigo também fornece informações importantes sobre as seguintes situações:

  • Uma alteração de comportamento em distribuições que use a versão mais recente do Pacemaker.
  • Um script necessário se você usar o Armazenamento de consulta e você anteriormente instalou o SQL Server 2017 cumulativa atualização 2 (CU2).
  • A partir do SQL Server 2017, o número de versão de compilação do Analysis Services e o número de versão de compilação do mecanismo de banco de dados do SQL Server não coincidem. Verifique se o Analysis Services cumulativa atualizar a versão de compilação, consulte para obter mais informações.

Atualização cumulativa

Atualizações cumulativas (CUs) agora estão disponíveis no Centro de Download da Microsoft.Somente a CU mais recente lançada para o SQL Server 2017 está disponível no Centro de Download.

CU pacotes para Linux estão disponíveis em https://packages.microsoft.com/.

Observações

  • Cada nova CU contém todas as correções que foram incluídas com a CU anterior para a versão instalada do SQL Server.
  • As CUs do SQL Server são certificadas nos mesmos níveis que os Pacotes de Serviço e devem ser instaladas com o mesmo nível de confiança.
  • A Microsoft recomenda a instalação contínua e proativa de CUs conforme eles se tornam disponíveis de acordo com estas diretrizes:
    • Dados históricos mostram que um número significativo de casos de suporte envolvem um problema que já foi abordado em uma CU lançada.
    • CUs podem conter valor agregado além de hotfixes. Isso inclui atualizações na capacidade de suporte, gerenciamento e confiabilidade.
  • É recomendável que você teste as CUs antes de implantá-las em ambientes de produção.
 

Como obter esse pacote de atualização cumulativa para o Windows


A seguinte atualização está disponível no Microsoft Download Center:

Se a página de download não aparecer, contate o Serviço de Suporte e Atendimento ao Cliente Microsoft para obter o pacote de atualizações cumulativas.

Observação: Depois de futuras atualizações cumulativas lançadas para SQL Server 2017, este e todos os CUs anteriores podem ser localizadas e baixadas do Microsoft Update Catalog. No entanto, recomendamos que você sempre instale a atualização cumulativa mais recente disponível.

Como obter esse pacote de atualizações cumulativas para Linux


Para atualizar o Linux para CU mais recente, você deve primeiramente ter a atualização cumulativa repositório configurado. Em seguida, atualize seus pacotes do SQL Server usando o comando de atualização específicos da plataforma apropriada.

Para obter instruções de instalação e links diretos para os downloads do pacote CU, consulte as notas de versão.

Correcções adicionais incluídos neste pacote de atualizações cumulativas


Número do bug VSTS Número do artigo KB Descrição Área fixa Plataforma
12150907 4342424 Aperfeiçoamento: Atualização para dar suporte a QUERY_OPTIMIZER_COMPATIBILITY_LEVEL_n na opção de dica de uso no SQL Server 2017 Desempenho do SQL Todas
12201714 4344103 CORREÇÃO: MEMORYCLERK_SOSMEMMANAGER cresce e erro FAIL_PAGE_ALLOCATION é registrado após você ativar alocações de página grande Mecanismo SQL Windows
12171986 4344904 Melhoramento permite criar grupo de disponibilidade e alterar do grupo de disponibilidade definir SESSION_TIMEOUT para uma réplica somente configuração no SQL Server Mecanismo SQL Todos
12210593 4053447 CORREÇÃO: Prompt incorreto para reiniciar o SQL Server 2017 no Linux, quando não for necessário Ferramentas de gerenciamento Linux
12177844 4133191 CORREÇÃO: Um vazamento de memória ocorre em sqlwepxxx.dll faz com que o processo de WmiPrvSe.exe falha Mecanismo SQL Windows
12248777 4341221 CORREÇÃO: Backup VSS Falha na réplica secundária de grupos básicos de disponibilidade no SQL Server 2016 e 2017 Mecanismo SQL Windows
12221447 4345228 CORRIGIR: Desempenho lento no SQL Server 2017 quando você executa uma consulta que contém a função HASHBYTES quando comparado ao SQL Server 2016 Mecanismo SQL Windows
12227459 4345402 CORREÇÃO: Sincronização de um banco de dados leva muito tempo para concluir no SQL Server 2017 Analysis Services Windows
12213556 4345683 CORREÇÃO: Um valor definido para a variável "Aceito SPNs do NTLM" causa uma violação de acesso durante a inicialização do SQL Server 2017 Conectividade do SQL Windows
12242752 4340426 CORREÇÃO: O suplemento do Excel ainda aparece na home page do MDS quando a opção está definida como "Não" no Gerenciador de configuração do MDS Data Quality Services (DQS) Windows
12229848 4346330 CORREÇÃO: A operação de exclusão não funciona em uma entidade quando você ativa a permissão de aprovação necessária em SQL Server 2017 Master Data Services Data Quality Services (DQS) Windows
12128370 4346643 CORREÇÃO: 3212 e 3013 erros quando você faz backup de um banco de dados em grupos de disponibilidade do AlwaysOn no SQL Server 2017 Mecanismo SQL Windows
12242742 4338715 CORREÇÃO: Muitos eventos de xml_deadlock_report são relatados para uma ocorrência de bloqueio único interno da consulta no SQL Server 2016 e 2017 Desempenho do SQL Todas
12245662 4338576 CORREÇÃO: Atrasos de transação na réplica primário se a sincronização do banco de dados é informada incorretamente em uma réplica secundária no SQL Server Alta disponibilidade Windows
12245666 4340746 CORREÇÃO: Nenhum registro é retornado quando você executa uma consulta MDX depois de reiniciar o SSAS 2016 e 2017 Analysis Services Windows
12203152 4346812 CORREÇÃO: O erro ocorre quando você abre uma chave simétrica que é criptografada com uma chave assimétrica no SQL Server 2017 Segurança SQL Windows
12247780 4347055 CORREÇÃO: Erro de falta de memória ao executar o SQL Server 2017 dentro de um recipiente de Linux Docker Mecanismo SQL Linux
12251323 4347088 CORREÇÃO: Sem memória erro ocorre mesmo quando há várias páginas livres no SQL Server Mecanismo SQL Windows
12248752 4100582 CORREÇÃO: O vazamento de dados confidenciais ocorre quando você ativar a função DDM no SQL Server 2016 e 2017 Segurança SQL Todos
12249912 4456883 CORREÇÃO: Alteração rastreando mensagens de limpeza inesperadamente registrada no log de erros para sempre em grupos de disponibilidade no SQL Server Mecanismo SQL Windows
12164662 4341398 CORREÇÃO: Notificações de eventos para eventos AUDIT_LOGIN e AUDIT_LOGIN_FAILED fará com que um crescimento incomum de TempDB no SQL Server 2016 e 2017 Mecanismo SQL Windows
12201819 2932559 CORREÇÃO: Totais estão errados depois de filtrar em um item de tabela dinâmica e remover o filtro no SSAS Analysis Services Windows

Observações para esta atualização


Implementação em ambientes híbridos

Quando você implantar uma atualização em um ambiente híbrido (como AlwaysOn, replicação, cluster e espelhamento), recomendamos que você consulte os seguintes artigos antes de implantar a atualização:

Informações sobre o pacote de atualizações cumulativas


Pré-requisitos

Para aplicar esse pacote de atualizações cumulativas, você deve estar executando o SQL Server 2017.

Informações sobre reinicialização

Talvez seja necessário reiniciar o computador após aplicar esse pacote de atualizações cumulativas.

Informações do Registro

Para usar um dos hotfixes no pacote, não é necessário fazer nenhuma alteração no Registro.

Aviso de pacemaker


IMPORTANTE

Todas as distribuições (incluindo RHEL 7.3 e 7.4) que usam o mais recente disponível Pacemaker pacote 1.1.18-11.el7 introduzem uma alteração de comportamento para o Iniciar falha-for-fatal configuração de cluster quando seu valor for false. Essa alteração afeta o fluxo de trabalho de failover. Se uma réplica primária sofrer uma interrupção, o cluster deve failover para uma das réplicas de secundário disponíveis. Em vez disso, os usuários notarão o cluster continua tentando iniciar a réplica primária com falha. Se esse principal nunca for colocado online (devido a uma interrupção permanente), o cluster nunca failover para outra réplica secundária disponível.

Esse problema afeta todas as versões do SQL Server, independentemente da versão de atualização cumulativa que eles estão em.

Para atenuar o problema, use um dos seguintes métodos.

Método 1

Execute as seguintes etapas:

  1. Remover o Iniciar falha-for-fatal substituir do cluster existente.
       # RHEL, Ubuntu         pcs property unset start-failure-is-fatal         # or         pcs property set start-failure-is-fatal=true   # SLES         crm configure property start-failure-is-fatal=true
  2. Diminua o valor de intervalo de nova verificação de cluster .
       # RHEL, Ubuntu         pcs property set cluster-recheck-interval=<Xmin>   # SLES         crm configure property cluster-recheck-interval=<Xmin>
  3. Adicione a propriedade da meta de tempo limite de falha para cada recurso AG.
       # RHEL, Ubuntu         pcs resource update ag1 meta failure-timeout=60s   # SLES         crm configure edit ag1      # In the text editor, add `meta failure-timeout=60s` after any `param`s and before any `op`s
     

    Observação: Nesse código, substitua o valor de valores < Xmin > conforme apropriado. Se uma réplica falhar, o cluster tentará reiniciar a réplica em um intervalo que é vinculado, o valor de tempo limite de falha e o valor do intervalo de nova verificação de cluster . Por exemplo, se o tempo limite de falha é definido como 60 segundos e intervalo de nova verificação de cluster é definida como 120 segundos, a reinicialização é tentada em um intervalo maior que 60 segundos, mas menos de 120 segundos. Recomendamos que você defina o tempo limite de falha para 60s e intervalo de nova verificação de cluster para um valor maior que 60 segundos. Não é recomendável definir o intervalo de nova verificação de cluster para um valor pequeno. Para obter mais informações, consulte a documentação do Pacemaker ou consulte o fornecedor do sistema.

Método 2

Reverta para versão 1.1.16 Pacemaker.

Aviso de armazenamento de consulta


IMPORTANTE

Se você usar o recurso de Armazenamento de consulta e você já tiver instalado atualização cumulativa 2 (CU2) (14.0.3008.27), os seguintes requisitos se aplicam a você:

Após instalar atualização cumulativa 3 (CU3) (14.0.3015.40) ou uma UC posterior, imediatamente você deve executar o seguinte script para excluir todos os planos que foram coletados pelo armazenamento de consulta enquanto CU2 foi instalado:

SET NOCOUNT ON;DROP TABLE IF EXISTS #tmpUserDBs;SELECT [database_id], 0 AS [IsDone]INTO #tmpUserDBsFROM master.sys.databasesWHERE [database_id] > 4 AND [state] = 0 -- must be ONLINE AND is_read_only = 0 -- cannot be READ_ONLY AND [database_id] NOT IN (SELECT dr.database_id FROM sys.dm_hadr_database_replica_states dr -- Except all local Always On secondary replicas  INNER JOIN sys.dm_hadr_availability_replica_states rs ON dr.group_id = rs.group_id  INNER JOIN sys.databases d ON dr.database_id = d.database_id  WHERE rs.role = 2 -- Is Secondary   AND dr.is_local = 1   AND rs.is_local = 1)DECLARE @userDB sysname;WHILE (SELECT COUNT([database_id]) FROM #tmpUserDBs WHERE [IsDone] = 0) > 0BEGIN SELECT TOP 1 @userDB = DB_NAME([database_id]) FROM #tmpUserDBs WHERE [IsDone] = 0 -- PRINT 'Working on database ' + @userDB EXEC ('USE [' + @userDB + '];DECLARE @clearPlan bigint, @clearQry bigint;IF EXISTS (SELECT [actual_state] FROM sys.database_query_store_options WHERE [actual_state] IN (1,2))BEGIN IF EXISTS (SELECT plan_id FROM sys.query_store_plan WHERE engine_version = ''14.0.3008.27'') BEGIN  DROP TABLE IF EXISTS #tmpclearPlans;  SELECT plan_id, query_id, 0 AS [IsDone]  INTO #tmpclearPlans  FROM sys.query_store_plan WHERE engine_version = ''14.0.3008.27''  WHILE (SELECT COUNT(plan_id) FROM #tmpclearPlans WHERE [IsDone] = 0) > 0  BEGIN   SELECT TOP 1 @clearPlan = plan_id, @clearQry = query_id FROM #tmpclearPlans WHERE [IsDone] = 0   EXECUTE sys.sp_query_store_unforce_plan @clearQry, @clearPlan;   EXECUTE sys.sp_query_store_remove_plan @clearPlan;   UPDATE #tmpclearPlans   SET [IsDone] = 1   WHERE plan_id = @clearPlan AND query_id = @clearQry  END;  PRINT ''- Cleared possibly affected plans in database [' + @userDB + ']'' END ELSE BEGIN  PRINT ''- No affected plans in database [' + @userDB + ']'' ENDENDELSEBEGIN PRINT ''- Query Store not enabled in database [' + @userDB + ']''END')  UPDATE #tmpUserDBs  SET [IsDone] = 1  WHERE [database_id] = DB_ID(@userDB)END

ERROR: at System.Diagnostics.Process.Kill() at Microsoft.Support.SEOInfrastructureService.PhantomJS.PhantomJSRunner.WaitForExit(Process process, Int32 waitTime, StringBuilder dataBuilder, Boolean isTotalProcessTimeout)New URL: about:blank