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 / 343568
Accepted
Mister_Moto
Mister_Moto
Asked: 2024-11-13 05:25:56 +0800 CST2024-11-13 05:25:56 +0800 CST 2024-11-13 05:25:56 +0800 CST

Dependência rígida do SQL Server 2019 em drivers ODBC

  • 772

Ao instalar o SQL Server 2019, os drivers ODBC também são instalados ao mesmo tempo em que o MSSQL parece ter uma dependência rígida. O MSSQL pode ser reconfigurado para usar versões mais recentes dos drivers ODBC e as versões mais antigas removidas? As versões mais antigas dos drivers ODBC estão sendo sinalizadas pelo nosso scanner de gerenciamento de vulnerabilidades de terceiros e não parece haver uma maneira de remediar essas descobertas de forma limpa.

Detalhes até o momento em que este texto foi escrito:

  • O servidor com o qual estou trabalhando está executando o SQL Server 2019 developer edition
  • Ele está sendo executado em uma VM do Windows Server 2019 Standard Edition
  • Este servidor SQL está na versão 15.0.4405.4 (CU29)
  • Antes de instalar o CU29, este servidor estava no CU27
  • A versão ODBC instalada é 17.10.6.1
  • Todos os componentes são x64, não x86

Solução de problemas/Análise:

  • A atualização de CU27 para CU29 não atualizou a versão do driver ODBC
  • Posso instalar manualmente uma versão mais recente do driver ODBC (18.4.1.1) e ele coexistirá pacificamente com 17.10.6.1, mas não limpará a vulnerabilidade
  • Se eu remover 17.10.6.1 para limpar a vulnerabilidade, o SQL Server Agent falhará ao iniciar (Visualizador de eventos: o serviço não respondeu à solicitação de início ou controle em tempo hábil)
  • Reinstalar o ODBC 17.10.6.1 corrige o problema e permite que o agente seja iniciado - mas a vulnerabilidade reaparece
  • Reparar o SQL Server após uma instalação do driver v18.x apenas reinstala o driver ODBC para uma versão principal anterior (17.xxx), que também não é compatível e ainda aciona descobertas em nossas varreduras de vulnerabilidade.
  • Não parece haver versões mais recentes do ODBC 17 ainda, pois a MS não parece estar fazendo desenvolvimento paralelo e lançando versões mais recentes do 17.x e 18.x. Eles parecem nos empurrar para a v18, que não funciona bem com o SQL 2019 Agent.

Lições aprendidas:

  • Parece que o MSSQL 2019 tem uma dependência forte na versão 17 do driver ODBC para SQL 2019
  • As CUs não parecem atualizar esses drivers - ainda (se é que o fazem)
  • Não parece haver uma maneira de reconfigurar/ajustar o MSSQL 2019 para usar uma versão principal mais recente (por exemplo, 18.x) do driver ODBC por meio do SSMS/UI
  • Ainda não investiguei as edições do registro do sistema Windows
  • Independentemente de quais componentes eu instalo no momento da criação da instância, esses drivers são instalados, então não parece que minimizar minha área de superfície ajuda (comparei esta instância com outra instância de 2019 com uma instalação mínima realizada - ambas tinham os mesmos drivers ODBC).

Questões:

  • Alguém aqui já passou pelo(s) mesmo(s) problema(s) e há medidas que eu possa tomar para que o MSSQL veja/use drivers ODBC mais recentes?
  • As atualizações do driver ODBC serão enviadas com as CUs ou preciso atualizá-las manualmente por meio de downloads oficiais da MS?

Qualquer conselho/orientação será apreciado. Obrigado.

sql-server
  • 1 1 respostas
  • 122 Views

1 respostas

  • Voted
  1. Best Answer
    Sean Gallardy
    2024-11-13T06:58:42+08:002024-11-13T06:58:42+08:00

    Você está correto, dependendo da versão do SQL Server, há vários componentes que podem exigir versões diferentes de drivers. Eu escrevi sobre isso (no sentido geral de AG/FCI, mas se aplica a itens de Agent e de mecanismo interno também) e você pode ver que o SQL 2019 requer ODBC 17.

    Para sua pergunta, as atualizações do driver ODBC para a versão principal (como se elas substituíssem os binários anteriores da mesma versão principal) podem ser atualizadas; normalmente, os drivers ODBC vêm em suas próprias atualizações .

    Atualizações entre versões principais, por exemplo no OP de 17 para 18, não permitem que a versão principal mais nova seja usada. No caso mais simples, é porque o aplicativo (por exemplo, Agent) foi compilado com o driver 17 codificado.

    Se realmente houver uma vulnerabilidade no driver, e a versão do SQL Server ainda for suportada, então deve haver uma atualização do driver para resolver esse problema. Observe que apenas vulnerabilidades classificadas como críticas são abordadas para software fora do suporte convencional.

    • 1

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