Linuxサーバー(Ubuntu 18.04など)からリモートのMicrosoft SQL Server 2017インスタンスへの接続を確認する最も簡単な方法は何ですか?
コマンドラインからMS SQLサーバーにTelnetで接続するのが最も簡単だと思います。
$ telnet <server-name-or-ip> 1433
接続が成功した場合、画面は空白になります。それ以外の場合は"Connecting to server-name-or-ip ... Host to connection to the Host、on port 1433:Connect failed。"のようなメッセージが表示されます。
リモートのMicrosoft SQL Serverインスタンス:ポートTCP 1433がファイアウォールで開いていることを確認します。
Ubuntu Serverインスタンスに、次の説明に従ってmssql-toolsをインストールします。 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
次に、テストクエリを実行できます。パスワードの入力を求められます。
[user@lnx01 ~ $] 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)