Configuração do DBAccess Linux com Microsoft SQL Server

Configuração do DBAccess Linux com Microsoft SQL Server

Hoje iremos demonstrar como configurar o DBAccess no Linux para utilização do Microsoft SQL Server (MSSQL).

O MSSQL, pode estar instalado tanto no Windows como no próprio Linux. A configuração do DBAccess será a mesma.

O distro Linux que estamos utilizando nesse post, é o Ubuntu Server 16, porém o procedimento para instalação em outros distros, é basicamente o mesmo.

Estamos considerando também, que o seu Servidor Linux já está com o DBAccess.

A primeira coisa que devemos fazer, é baixar o Microsoft ODBC Driver para o MSSQL.

No caso do nosso post, iremos utilizar a versão 17 do Microsoft ODBC.

Após acessar o Linux, via terminal, digite a seguinte sequência de comandos, conforme documentação da Microsoft:

sudo su 
curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list > /etc/apt/sources.list.d/mssql-release.list
exit
sudo apt-get update
sudo ACCEPT_EULA=Y apt-get install msodbcsql17
sudo apt-get install unixodbc-dev

Nessa primeira etapa, fizemos o download e instalação do Drive ODBC do MSSQL e também do Drive UnixODBC, o qual é utilizado pelo DBAccess.

Para podermos verificar se o Drive ODBC do MSSQL foi instalado corretamente, iremos verificar se o arquivo de configuração odbcinst.ini, foi criado corretamente.

Para acessar o mesmo, execute o seguinte comando no terminal:

sudo vi /etc/odbcinst.ini

A seguinte tela deverá ser exibida:

Arquivo odbcinst.ini - Smart SigaImagem 01 – Arquivo odbcinst.ini – Smart Siga

Agora iremos criar o arquivo de configuração ODBC, informando o Drive, o nome do Ambiente (Enviroment) que estamos utilizando no Protheus, e mais algumas configurações especificas.

Para tanto, digite o seguinte comando no terminal:

vi /etc/odbc.ini

Será criado o arquivo odbc.ini no caminho especificado.

Agora, digite as seguintes informações, no arquivo odbc.ini:

[P12]
Driver        = ODBC Driver 17 for SQL Server
Description   = Protheus 12
Server        = 192.170.10.30
Port          = 1433
DataBase      = DBP12
AnsiNPW       = Yes
QuotedID      = Yes
AutoTranslate = Yes

Seguem os descritivos de cada chave, do arquivo odbc.ini:

  • []: Nome do Ambiente. Recomendável utilizar o mesmo nome do Ambiente utilizado na configuração do DBAccess;
  • Driver: Versão do Driver MSSQL utilizado no Linux;
  • Description: Descrição da Conexão. Pode utilizar qual descrição.
  • Server: IP do Servidor onde está o Banco de Dados MSSQL. Se o MSSQL estiver instalado no mesmo servidor Linux do DBAccess, pode-se, utilizar como “localhost”;
  • Port: Porta padrão do MSSQL. A porta padrão de conexão do MSSQL é 1433;
  • DataBase: Nome do Banco de Dados do MSSQL utilizado pelo Protheus;
  • AnsiNPW: “Utilizado para “forçar” o driver a utilizar comportamentos definidos por ANSI (Padrões Americanos) para tratar comparações NULL”. Conforme orientação da ToTvs o conteúdo da chave AnsiNPW, deverá ser sempre “Yes”;
  • QuotedID: “Utilizado para “forçar” o MSSQL a usar as regras ISO (Normalização Internacional) de Banco de Dados, referentes ao uso de aspas em instruções SQL”. Conforme orientação da ToTvs, o conteúdo da chave QuotedID, deverá ser sempre “Yes”;
  • AutoTranslat: “Utilizado para que as cadeias de caracteres ANSI enviadas entre o cliente e o servidor, sejam traduzidas com a conversão por Unicode para minimizar problemas na correspondência de caracteres estendidos entre as páginas de código no cliente e no servidor”. Conforme orientação da ToTvs, o conteúdo da chave QuotedID, deverá ser sempre “Yes”.

Pois bem, após a configuração acima, deve-se executar os seguintes comandos, para fazer com que, o unixODBC instale o odbcinst e o odcini, com as novas configurações determinadas no arquivo odbc.ini:

odbcinst -i -s -l -f /etc/odbc.ini
odbcinst -s -q

Agora acesse a pasta onde está o DBAccess, e execute os seguintes comando para executar o mesmo:

cd multi/
export LD_LIBRARY_PATH=./
./dbaccess64

Após executar os comandos acima para definir a variável de ambiente e executar o DBAccess em modo console, o DBAccess está pronto para receber conexões, conforme imagem abaixo:

Execução DBAccess Linux - Smart SigaImagem 02 -Execução DBAccess Linux – Smart Siga

Para validar as configurações realizadas no Linux, iremos acessar o DBMonitor do DBAccess através de uma estão Windows.

Após acessar DBMonitor, a seguinte tela será exibida, demonstrado que estamos acessando um DBAccess que está sendo executando em Linux (box vermelho):

DBMonitor Acessando DBAccess Linux - Smart SigaImagem 03: DBMonitor Acessando DBAccess Linux – Smart Siga

Agora no DBMonitor, navegue até a aba “Configurações” (box amarelo), clique na aba “Microsoft SQL” (box vermelho), clique no botão “Novo” (box verde), crie um novo Ambiente (recomendamos utilizar o mesmo nome utilizado no arquivo odbc.ini. O nome do Ambiente é a informação que fica entre “chaves” na primeira linha do arquivo),  e preencha as informações de usuário e senha do Banco de Dados configurado no arquivo odbc.ini, conforme imagem abaixo:

Configuração DBAcces MSSQL - Smart SigaImagem 04: Configuração DBAccess MSSQL – Smart Siga

Após realizar as configurações citadas acima, clique na aba “Assistentes” (box vermelho), em seguida clique na opção “Validação de Conexão” (box verde), conforme imagem abaixo:

Validação de Conexão DBMonitor - Smart SigaImagem 05: Validação de Conexão DBMonitor – Smart Siga

No assistente de conexão, clique no botão “Avançar”, e seleção de Base de Dados, selecione Microsoft SQL, conforme imagem abaixo:

Assitente de Conexão DBMonitor - Smart SigaImagem 06: Assistente de Conexão DBMonitor – Smart Siga

Agora clique no botão “Avançar” e digite o nome do Ambiente a ser testado, no meu caso o nome do meu Ambiente é “P12”.

Em seguida clique em finalizar e aguarde a validação.

A seguinte tela será exibida:

Conexão Validada - Smart SigaImagem 07: Conexão Validada – Smart Siga

Conforme verificado na imagem acima, a validação foi validade com sucesso.

Isto significa que nossas configurações foram realizadas com sucesso.

Assim, nossa configuração de DBAccess no Linux, acessando a Base de Dados do MSSQL, tanto localmente como remotamente, foram realizadas corretamente.

Caso ainda não tenham se inscrito no Canal Smart Siga, ou em nossas mídias sociais, ou em nosso GitHub, aproveitem para se cadastrar agora, pois assim, vocês recebem em primeira mão, todas as novidades do nosso site.

Aproveitem também, para ingressar em nosso Canal do Smart Siga no Telegram. Para tanto acessem: https://t.me/smartsiga.

Smart Siga - TI Inteligente

 

Referências:
Microsoft – Instalando o Microsoft ODBC Driver for SQL Server no Linux e no macOS
TDN – Como criar uma fonte de dados para uso com Microsoft SQL Server
Compartilhe:
  •  
  •  
  •  

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Seja um Analista VIP!!!

Recebe em primeira mão as novidades do Canal Smart Siga, além de conteúdos exclusivos.