web-dev-qa-db-ja.com

GUIクライアントからローカルMS SQL Serverへの接続

SQLサーバーとデータベースサーバーは非常に初めてです。最近、SQL Server Expressを使用していて、Windows上のSQL Server Management Studioを使用してデータベースにアクセスしています。私は今、Linuxマシンで同様のセットアップを実現しようとしています。

マシンにローカルSQL Serverインスタンスを作成し、データベースにクエリを実行するためのGUIクライアントとして SQLectron を使用します。 Manjaro Linuxを使用しているので、AURからパッケージをインストールします。

これまでに、_mssql-server_、_mssql-tools_および_sqlectron-gui_をインストールしました。ローカルサーバーをセットアップするために、_Sudo /opt/mssql/bin/mssql-conf setup_コマンドを実行しました。その後、コマンド_systemctl status mssql-server_を実行すると、次のように返されます。

[kev @ XPS-Manjaro〜] $ systemctl status mssql-server 
●mssql-server.service-Microsoft SQL Server Database Engine 
 Loaded:loaded(/ usr/lib/systemd/system/mssql -server.service;有効、ベンダープリセット:無効)
アクティブ:2017年8月23日水曜日以降、アクティブ(実行中)13:43:49 IST; 2時間42分前
ドキュメント:https://docs.Microsoft.com/en-us/sql/linux
メインPID:9130(sqlservr)
タスク:165 
 CGroup:/system.slice/mssql-server.service
├─9130/opt/mssql/bin/sqlservr
└─9144/opt/mssql/bin/sqlservr
 
 8月23日13:43:52 XPS-Manjaro sqlservr [9130]:[145B blobデータ] 
 8月23日13:43:52 XPS-Manjaro sqlservr [9130]:[66B blobデータ] 
 8月23日13:43:52 XPS-Manjaro sqlservr [9130]:[96B blobデータ] 
 8月23日13:43:52 XPS-Manjaro sqlservr [9130]:[100B blobデータ] 
 Aug 23 13:43:52 XPS-Manjaro sqlservr [9130]:[71B blob data] 
 Aug 23 13:43:52 XPS-Manjaro sqlservr [9130]:[124B blob data ] 
 8月23日13:49:03 XPS-Manjaro sqlservr [9130]:[156B blobデータ] 
 8月23日13:49:03 XPS-Manjaro sqlservr [9130]:[194B blobデータ] 
 8月23日13:52:31 XPS-Manjaro sqlservr [9130]:[74B blobデータ] 
 8月23日13:52:31 XPS-Manjaro sqlservr [9130]:[199B blobデータ]

次の画面で、SQLectronを介してサーバーへのローカル接続を作成しようとしています。

enter image description here

SQL Serverの経験はほとんどないので、ローカルサーバーに接続するためにこれらの資格情報をすべて取得する場所が完全にわかりません。私が知っているのは、_Sudo /opt/mssql/bin/mssql-conf setup_コマンドで設定したパスワードだけです。

サーバー名、ホストアドレス(127.0.0.1?)、ポート、ドメイン、Unixソケットパス、ユーザー名はどのようにして見つけますか?

11
KOB

Mssql-serverサービスと同じマシンでGUIを実行している場合は、アドレス(127.0.0.1)にlocalhostを使用できます。別のワークステーションからGUIを実行している場合は、mssql-serverサービスが実行されているマシンのIPv4アドレスが必要です。 Linuxターミナルプロンプトからifconfigを実行することで取得できます。 ifconfigからの出力例:

eth0:flags = 4163 mtu 1500 
 ether 00:15:5d:89:45:01 txqueuelen 1000(Ethernet)
 RXパケット423バイト137827(134.5 KiB)
 RXエラー0ドロップ0オーバーラン0フレーム0 
 TXパケット0バイト0(0.0 B)
 TXエラー0ドロップ0オーバーラン0キャリア0コリジョン0 
 
 eth1:フラグ= 4163 mtu 1500 
 inet 192.168.200.11 netmask 255.255.255.0 broadcast 192.168.200.255 
 inet6 fe80 :: 2f70:9d15:8e7d:16cb prefixlen 64 scopeid 0x20 
 ether 00:15 :5d:89:45:04 txqueuelen 1000(イーサネット)
 RXパケット20138バイト2006000(1.9 MiB)
 RXエラー0ドロップ0オーバーラン0フレーム0 
 TXパケット19756バイト30125657(28.7 MiB)
 TXエラー0ドロップ0オーバーラン0キャリア0コリジョン0 
 
 lo:flags = 73 mtu 65536 
 inet 127.0.0.1ネットマスク255.0。 0.0 
 inet6 :: 1 prefixlen 128 scopeid 0x10 
 loop txqueuelen 1(ローカルループバック)
 RXパケット3239バイト361340(352.8 KiB)
 RXエラー0ドロップ0オーバーラン0フレーム0 
 TXパケット3239バイト361340(352.8 KiB)
 TXエラー0ドロップ0オーバーラン0キャリア0コリジョン0 

上記の出力では、重要なビットは「inet」アドレスです。私の場合は192.168.200.11です。

SQL Serverのデフォルトポートは1433です。mssql-confで別のポートを選択しない限り、そのポート番号を使用してください。ネットワーク経由でSQL Serverに接続する場合は、Linuxボックスのファイアウォールが1433経由の外部接続を許可していることを確認してください。

ログインとしてsaを使用し、SQL Serverのセットアップ中にSudo /opt/mssql/bin/mssql-conf setupコマンドを使用して指定したパスワードを使用します。

ドメインとUNIXソケットパスは空白のままにします。

インスタンスに接続したら、sa以外のアカウントを構成できます。 CREATE LOGINステートメント でそれを行います。

参考までに、SQL Server Management Studioを使用してLinux上のSQL Serverに接続できます(必要な場合)。

7
Max Vernon