AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / dba / Perguntas / 274976
Accepted
RonJohn
RonJohn
Asked: 2020-09-05 07:02:31 +0800 CST2020-09-05 07:02:31 +0800 CST 2020-09-05 07:02:31 +0800 CST

Instalando uma CU mais antiga sobre um patch de segurança?

  • 772

De acordo com este link da Microsoft , o SQL Server 12.0.6372.1 requer qualquer sistema com pelo menos SQL 2014 SP3, então meu antecessor o instalou no SP3. Agora a versão é "2014 (SP3-CU-GDR) (KB4535288) - 12.0.6372.1".

Como esse patch de segurança corrige apenas um problema específico com o Reporting Services e é menor que o pacote CU4, ISTM que também devo instalar o patch CU4.

Mas como? Primeiro desinstalo o KB4535288, depois instalo o KB4500181 (CU4) e reinstalo o KB4535288, ou posso simplesmente colocar o KB4500181 em cima do KB4535288 (que parece substituir os arquivos KB4535288.

sql-server cumulative-update
  • 1 1 respostas
  • 636 Views

1 respostas

  • Voted
  1. Best Answer
    Aaron Bertrand
    2020-09-05T08:18:16+08:002020-09-05T08:18:16+08:00

    #TL;DR

    Atualmente, não há nada que você precise fazer para obter as correções incluídas no CU4. Eles já estão lá, embora @@VERSION sugira incorretamente que você tenha um GDR (e, como você leu em outro lugar, os GDRs não contêm correções de CU). Se você quiser mais informações, por favor, continue lendo.

    #Fundo

    Os patches são cumulativos , incluindo atualizações de segurança, o que significa que incluem todos os patches anteriores nesse branch. O tamanho do arquivo (executável compactado) não é uma maneira muito confiável de determinar se ele inclui ou não um patch anterior.

    Para ser claro, cada versão do SQL Server (incluindo cada service pack anterior ao SQL Server 2017) é o que chamarei de "ramificação principal". Depois que a ramificação principal é lançada, eles precisam de aprimoramentos, geralmente nas categorias de desempenho, estabilidade ou segurança. Eles liberam essas correções na forma de atualizações GDR e CU. Estes se tornam dois ramos separados do ramo principal:

    • A ramificação CU contém todas as correções - desempenho, estabilidade, segurança. Atualmente a cadência para estes é um por mês para o primeiro ano de uma ramificação principal, e então a cada dois meses depois disso (até que a ramificação seja aposentada, o que é mais longo agora do que costumava ser porque não há service packs fazendo serviço anterior pacotes obsoletos). Quando estiver na ramificação de CU, à medida que aplicar mais atualizações, você sempre obterá todas as correções de CU. Se você aplicar CU1 e depois CU4, terá todas as correções de CU1, CU2, CU3 e CU4. Se você aplicar CU5 e depois CU12, terá todas as correções de CU1, CU2, ..., CU11, CU12.
    • Às vezes, uma liberação de segurança é publicada fora da banda (ou seja, não como parte da cadência mensal/bimestral da CU). Isso geralmente ocorre porque o problema é crítico ou porque precisa ser coordenado com um boletim de segurança que envolve outros produtos (como o Windows). Assim como uma CU, as atualizações de segurança que se aplicam a uma ramificação da CU contêm todas as correções da ramificação da CU até aquele ponto.
    • A ramificação GDR inclui apenas correções críticas , geralmente relacionadas à segurança, para a ramificação principal (por exemplo, Service Pack 3). Esse é o branch que eu estava falando no link referenciado abaixo : Eu quis dizer que a atualização GDR para SP3 não contém nenhuma das atualizações CU (o post diz "atualizações críticas", mas não tenho controle editorial para corrigi-lo) .
    • O objetivo da filial da RDA é fornecer o mínimo possível de mudanças na área de superfície (porque eles precisam testar o impacto de todas essas mudanças), mantendo os clientes seguros. Cada atualização sucessiva de GDR é apenas uma nova compilação na ramificação GDR e, portanto, como CUs e atualizações de segurança em ramificações CU, uma atualização de segurança para a ramificação GDR também contém todas as outras atualizações GDR que vieram antes dela.
    • Exceto ocasionalmente no início de uma versão, há mais atualizações de CU do que atualizações de GDR, principalmente porque elas estão restritas a correções críticas e há muito mais correções não críticas ao longo do tempo.

    No seu caso, a confusão (compreensível) vem do fato de @@VERSION retornar CU e GDR no nome, o que não faz sentido. Quando o patch foi lançado pela primeira vez, reclamei dessa confusão e, após um longo debate, eles corrigiram a terminologia nos artigos da KB e em outras documentações. Mas era tarde demais para corrigir o que @@VERSION retorna em uma compilação do mecanismo que já foi distribuído (e esse problema permanece até hoje porque essa foi a última atualização no branch CU).

    Isso é muito pano de fundo, mas para resumir, posso garantir que:

    1. A compilação que você instalou está na ramificação CU e não é uma atualização GDR , apesar do que @@VERSION possa estar dizendo a você. Você precisa ignorar o que essa string diz porque está errado, mas não há como corrigi-lo.
    2. Você definitivamente não pode aplicar CU4 sobre KB4535288. O instalador reconhecerá que sua versão já inclui todas as correções no CU4.
    3. Você não precisa desinstalar a atualização de segurança (que o colocará de volta em qualquer versão em que você estava antes de aplicá-la), aplicar CU4 (que o colocará em 12.0.6329.1) e reaplicar a atualização de segurança (que o colocará de volta em 12.0.6372.1). Você já tem essas correções.
    4. Você pode optar por não acreditar em mim e ir em frente e fazer tudo isso, estou apenas tentando ajudá-lo a evitar o trabalho que não serve a nenhum propósito, já que você fez a pergunta . Novamente, leia tudo aqui, mas tente esquecer que seu @@VERSION sugere incorretamente que você está em uma compilação GDR. Você não é.

    Eu já havia dito o seguinte anteriormente e não acredito que me contradisse com nada do que disse aqui:

    Você pode ver a lista de atualizações do SQL Server 2014 aqui .

    Nesse caso, não há nada que você possa aplicar ao SQL Server 2014 que adicione algo ao 12.0.6372.1. Literalmente nada. Desinstalar o KB4535288 para instalar o CU4 significa apenas que você removerá a correção de segurança no KB4535288 . Não vejo absolutamente nenhuma razão para fazer isso. E não, você não pode simplesmente "colocar o CU4 em cima do KB4535288" - bem, você pode tentar, mas não irá muito longe, porque o instalador reconhecerá que você já tem tudo no CU4.

    • 3

relate perguntas

  • SQL Server - Como as páginas de dados são armazenadas ao usar um índice clusterizado

  • Preciso de índices separados para cada tipo de consulta ou um índice de várias colunas funcionará?

  • Quando devo usar uma restrição exclusiva em vez de um índice exclusivo?

  • Quais são as principais causas de deadlocks e podem ser evitadas?

  • Como determinar se um Índice é necessário ou necessário

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    conectar ao servidor PostgreSQL: FATAL: nenhuma entrada pg_hba.conf para o host

    • 12 respostas
  • Marko Smith

    Como fazer a saída do sqlplus aparecer em uma linha?

    • 3 respostas
  • Marko Smith

    Selecione qual tem data máxima ou data mais recente

    • 3 respostas
  • Marko Smith

    Como faço para listar todos os esquemas no PostgreSQL?

    • 4 respostas
  • Marko Smith

    Listar todas as colunas de uma tabela especificada

    • 5 respostas
  • Marko Smith

    Como usar o sqlplus para se conectar a um banco de dados Oracle localizado em outro host sem modificar meu próprio tnsnames.ora

    • 4 respostas
  • Marko Smith

    Como você mysqldump tabela (s) específica (s)?

    • 4 respostas
  • Marko Smith

    Listar os privilégios do banco de dados usando o psql

    • 10 respostas
  • Marko Smith

    Como inserir valores em uma tabela de uma consulta de seleção no PostgreSQL?

    • 4 respostas
  • Marko Smith

    Como faço para listar todos os bancos de dados e tabelas usando o psql?

    • 7 respostas
  • Martin Hope
    Jin conectar ao servidor PostgreSQL: FATAL: nenhuma entrada pg_hba.conf para o host 2014-12-02 02:54:58 +0800 CST
  • Martin Hope
    Stéphane Como faço para listar todos os esquemas no PostgreSQL? 2013-04-16 11:19:16 +0800 CST
  • Martin Hope
    Mike Walsh Por que o log de transações continua crescendo ou fica sem espaço? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland Listar todas as colunas de uma tabela especificada 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney O MySQL pode realizar consultas razoavelmente em bilhões de linhas? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx Como posso monitorar o andamento de uma importação de um arquivo .sql grande? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison Como você mysqldump tabela (s) específica (s)? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    Jonas Como posso cronometrar consultas SQL usando psql? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas Como inserir valores em uma tabela de uma consulta de seleção no PostgreSQL? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas Como faço para listar todos os bancos de dados e tabelas usando o psql? 2011-02-18 00:45:49 +0800 CST

Hot tag

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve