Conectar ao Atlas SQL com ODBC Driver
Esta página descreve como instalar e configurar o driverODBC do MongoDB para conexão com uma instância de banco de dados federado.
Atualmente, o driver de ODBC está disponível para as seguintes arquiteturas:
Windows
Ubuntu 22.04 (x86_64)
mecanismo de autenticação suportados
Você pode autenticar com SCRAM-SHA-1, SCRAM-SHA-256, MONGODB-X509 e MongoDB Passwordless Authentication com AWS.
Pré-requisitos
Uma conta Atlas com um cluster implantado e Federação de Dados Atlas.
Para saber mais, consulte Introdução ao Atlas Data Federation.
Uma instância de banco de dados federado mapeada para um ou mais armazenamentos de dados.
Observação
Se alguns ou todos os seus dados vierem de um Atlas cluster, você deverá usar o MongoDB versão 5.0 ou superior para que esse cluster aproveite o Atlas SQL.
Um aplicativo ou ferramenta BI que você deseja conectar à instância do banco de dados federado com o driver ODBC.
Microsoft Visual C++ Redistribuível 17.0 ou superior para instalar bibliotecas de tempo de execução do Microsoft C e C++ (MSVC).
Observação
Se as bibliotecas de tempo de execução C++ não estiverem instaladas, o driver do ODBC retornará o seguinte erro:
The specified module could not be found (path of the dll which exists and has the proper permission).
Uma conta Atlas com um cluster implantado e Federação de Dados Atlas.
Para saber mais, consulte Introdução ao Atlas Data Federation.
Uma instância de banco de dados federado mapeada para um ou mais armazenamentos de dados.
Observação
Se alguns ou todos os seus dados vierem de um Atlas cluster, você deverá usar o MongoDB versão 5.0 ou superior para que esse cluster aproveite o Atlas SQL.
Um aplicativo ou ferramenta BI que você deseja conectar à instância do banco de dados federado com o driver ODBC.
Microsoft Visual C++ Redistribuível 17.0 ou superior para instalar bibliotecas de tempo de execução do Microsoft C e C++ (MSVC).
Observação
Se as bibliotecas de tempo de execução C++ não estiverem instaladas, o driver do ODBC retornará o seguinte erro:
The specified module could not be found (path of the dll which exists and has the proper permission).
Procedimento
Você pode usar o driver ODBC para conectar-se a ferramentas baseadas em SQL que aceitam uma API ODBC.
Faça o download do driver ODBC
Baixe a versão mais recente do driver ODBC do MongoDB no centro de download do MongoDB .
Verifique a integridade do pacote baixado .
A equipe de lançamento do MongoDB assina digitalmente todos os pacotes de software para certificar que um determinado pacote do MongoDB é uma versão válida e inalterada do MongoDB . Conclua as etapas a seguir para verificar o binário do driver ODBC em relação à chave SHA256 :
Baixe o
.sha256
arquivo para Windows x64 na página Downloads de drivers do MongoDB ODBC.Compare o arquivo de assinatura com o hash do instalador do MongoDB usando o seguinte script Powershell:
sigHash = (Get-Content $Env:HomePath\Downloads\mongodbodbc.msi.sha256 | Out-String). SubString(0,64).ToUpper(); ` fileHash = (Get-FileHash $Env:HomePath\Downloads\mongodbodbc.msi).Hash.Trim(); ` echo $sigHash; echo $fileHash; ` sigHash -eq $fileHash O comando gera três linhas:
Um hash SHA256 que você baixou diretamente do MongoDB.
Um hash SHA256 calculado do binário do driver MongoDB ODBC que você baixou do MongoDB.
Um resultado verdadeiro ou falso, dependendo da correspondência dos hashes.
Se os hashes corresponderem, o binário do MongoDB será verificado.
Instalar e configurar o driver ODBC
Configure um DSN do Sistema.
Para configurar sua conexão ODBC:
Abra seu Administrador da Fonte de Dados ODBC.
Observação
Se você utilizar um processador de bits, certifique-se de abrir o Administrador da Fonte de Dados ODBC de bits.
Navegue até a guia DSN do Sistema.
Adicione um novo DSN do Sistema.
Quando solicitado a selecionar um driver para sua fonte de dados, selecione o MongoDB Atlas SQL ODBC Driver.
Insira suas informações de conexão. Você deve inserir:
Observação
Você pode obter suas informações de conexão a partir do modal Conectar utilizando a interface Atlas SQL.
CampoDescriçãoDSN
Um nome para o seu novo DSN.
Nome de usuário
Um nome de usuário do banco de dados para usar para se conectar ao seu banco de dados.
Senha
A senha do usuário do banco de dados.
MongoDB URI
O URI de MongoDB deployment.
Database
O nome do banco de dados ao qual se conectar.
Máximo de habilitação
Caixa de seleção para impor o comprimento máximo da string de 4000 caracteres. Você deve ativar essa opção para trabalhar com ferramentas de BI , como Microsoft SQL MongoDB Server Management Studio, que não aceita dados de string de comprimento variável com comprimento máximo desconhecido.
Depois de inserir as informações de conexão necessárias, você pode testar a conexão com o ODBC Data Source Administrator.
Baixe e verifique o driver ODBC
Baixe o driver ODBC do MongoDB .
Observação
Clique em Copy link para salvar a URL necessária para construir o link de download do arquivo de assinatura em uma etapa posterior.
curl https://translators-connectors-releases.s3.amazonaws.com/mongosql-odbc-driver/ubuntu2204/1.4.0/release/mongoodbc.tar.gz --output mongoodbc.tar.gz
Verifique a integridade do pacote baixado:
A equipe de lançamento do MongoDB assina digitalmente todos os pacotes de software para certificar que um determinado pacote do MongoDB é uma versão válida e inalterada do MongoDB . A chave atlas-sql-odbc.asc
está disponível em pgp.mongodb.com
Execute o seguinte comando para baixar o arquivo
.sig
.curl -LO https://translators-connectors-releases.s3.amazonaws.com/mongosql-odbc-driver/ubuntu2204/1.4.0/release/mongoodbc.tar.gz.sig Execute o seguinte comando para baixar e importar o arquivo de chave.
curl -LO https://pgp.mongodb.com/atlas-sql-odbc.asc gpg --import atlas-sql-odbc.asc gpg: key 1CCF1A1263CDD699: public key "Atlas SQL ODBC Release Signing Key <packaging@mongodb.com>" imported gpg: Total number processed: 1 gpg: imported: 1 Execute o seguinte comando para verificar o arquivo de instalação do MongoDB .
gpg --verify mongoodbc.tar.gz.sig mongoodbc.tar.gz O GPG deve retornar essa resposta:
gpg: Signature made Wed May 22 13:24:36 2024 MDT gpg: using RSA key 0C5F007ABC491E4A gpg: Good signature from "Atlas SQL ODBC Release Signing Key <packaging@mongodb.com>" [unknown] Se o pacote estiver devidamente assinado, mas você não confiar na chave de assinatura em seu
trustdb
local,gpg
também retornará a seguinte mensagem :gpg: WARNING: This key is not certified with a trusted signature! gpg: There is no indication that the signature belongs to the owner. Primary key fingerprint: 1CF5 B0D7 B2F8 9E16 52D8 BA79 0C5F 007A BC49 1E4A Se você receber a seguinte mensagem de erro, confirme se importou a chave pública correta:
gpg: Can't check signature: public key not found
Extraia o driver ODBC:
O exemplo a seguir extrai o conteúdo do arquivo para /usr/local/lib/mongoodbc
. O diretório mongoodbc
contém um arquivo LICENSE
, um arquivo README.MD
e um diretório bin
. O diretório bin
contém a biblioteca de drivers ODBC libatsql.so
.
sudo tar -zxf mongoodbc.tar.gz --directory /usr/local/lib
Instalar e configurar o driver ODBC
Localize os arquivos de configuração do driver ODBC.
Execute o seguinte comando:
odbcinst -j Observe os locais dos arquivos de configuração para
DRIVERS
,SYSTEM DATA SOURCES
eUSER DATA SOURCES
.Exemplo:
unixODBC 2.3.9 DRIVERS............: /etc/odbcinst.ini SYSTEM DATA SOURCES: /etc/odbc.ini FILE DATA SOURCES..: /etc/ODBCDataSources USER DATA SOURCES..: /home/ubuntu/.odbc.ini SQLULEN Size.......: 8 SQLLEN Size........: 8 SQLSETPOSIROW Size.: 8
Configure o driver ODBC.
Abra o arquivo
odbcinst.ini
no editor de sua preferência.Exemplo:
sudo vim /etc/odbcinst.ini Adicione as seguintes entradas ao arquivo e especifique o caminho para a biblioteca do driver ODBC do
libatsql.so
.Exemplo:
[ODBC Drivers] MongoDB Atlas SQL ODBC Driver = Installed [MongoDB Atlas SQL ODBC Driver] Driver=/usr/local/lib/mongoodbc/bin/libatsql.so
Configure o DSN do Sistema ou DSN do Usuário.
Se vários usuários compartilharem o DSN, configure o DSN do Sistema. Se vários usuários não puderem compartilhar o DSN, configure o DSN do usuário. Se um único usuário usar o DSN, você poderá configurar o DSN do Sistema ou o DSN do Usuário.
Abra o arquivo
SYSTEM DATA SOURCES
ou arquivoUSER DATA SOURCES
no editor de sua preferência.Exemplo de DSN do sistema:
sudo vim /etc/odbc.ini Exemplo de DSN do usuário:
sudo vim /home/ubuntu/.odbc.ini Adicione as seguintes entradas ao arquivo e especifique os valores apropriados.
Observação
Você pode obter suas informações de conexão a partir do modal Conectar utilizando a interface Atlas SQL.
CampoDescriçãoPassword
Senha do usuário do banco de dados.
Driver
Caminho para a biblioteca de drivers do ODBC
libatsql.so
.Database
Nome do banco de banco de dados ao qual se conectar.
User
Nome de usuário do banco de dados a ser usado para se conectar ao seu banco de dados de dados .
Uri
URI de implementação do MongoDB .
UnicodeTranslationOption
Codificação Unicode para Atlas SQL. Defina como
utf16
.enable_max_string_length
Opcional. Sinalizador para impor o comprimento máximo da string de 4000 caracteres. Para habilitar, defina o valor como
1
e para desabilitar, defina o valor como0
. Se omitido, o padrão é0
. Você deve habilitar essa opção para trabalhar com ferramentas de BI, como o Microsoft SQL Server Management Studio, que não aceitam dados de string de comprimento variável com comprimento máximo desconhecido.Exemplo:
[ODBC Data Sources] MongoDB_Atlas_SQL = "MongoDB Atlas SQL ODBC Driver" [MongoDB_Atlas_SQL] Password = your_password Driver = /usr/local/lib/mongoodbc/bin/libatsql.so Database = sample_mflix User = your_username Uri = mongodb://datalake.region.a.query.mongodb.net/?ssl=true UnicodeTranslationOption = utf16
Teste sua conexão.
Execute o seguinte comando:
iusql -v MongoDB_Atlas_SQL
O exemplo a seguir mostra uma conexão bem-sucedida:
+---------------------------------------+ | Connected! | | | | sql-statement | | help [tablename] | | quit | | | +---------------------------------------+
Se a conexão falhar, verifique os detalhes em seus arquivos de configuração em relação à sua instância do Atlas Data Federation .
Observação
O seguinte aviso não impacto a operação do driver ODBC:
[MongoDB][API] Buffer size "0" not large enough for data.
O driver ODBC não suporta a função de consulta do iusql
.