risposta-alla-domanda-sullo-sviluppo-web-bd.com

Come testare la connessione da Linux a Microsoft SQL Server?

Qual è il modo più semplice per verificare la connettività da un server Linux (ad esempio Ubuntu 18.04) a un'istanza remota di Microsoft SQL Server 2017?

5
Chef Tony

Penso che il più semplice sarebbe provare a telnet sul server MS SQL dalla riga di comando:

$ telnet <server-name-or-ip> 1433

Se la tua connessione è andata a buon fine lo schermo diventa vuoto, altrimenti vedrai qualcosa come "Connessione al nome-server-o-ip ... Impossibile aprire la connessione all'host, sulla porta 1433: Connessione fallita."

3
mazaneicha

Nell'istanza remota di Microsoft SQL Server: assicurarsi che port TCP 1433 sia aperto nel firewall.

Sull'istanza di Ubuntu Server installa mssql-tools come descritto qui: https://www.Microsoft.com/en-us/sql-server/developer-get-started/php/ubunt

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 mssql-tools
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc
Sudo apt-get install unixodbc-dev

È quindi possibile eseguire una query di prova: verrà richiesta la password:

[[email protected] ~ $] sqlcmd -S <remoteip> -U <user> -p -Q "SELECT @@VERSION"
Password: 

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Microsoft SQL Server 2017 (RTM) - 14.0.1000.169 (X64) 
    Aug 22 2017 17:04:49 
    Copyright (C) 2017 Microsoft Corporation
    Express Edition (64-bit) on Windows Server 2016 Standard 10.0 <X64> (Build 14393: )


(1 rows affected)
1
Chef Tony