SQL Server 2019 : リモートホストから接続する2020/01/29 |
インストールした SQL Server のデータベースエンジンに、リモートホストから接続するには以下のように設定します。
例として、Windows 10 から接続します。
|
[1] |
接続先の SQL Server インストール ホストと、接続元のリモートホストが、同一の Active Directory
ドメインに所属している場合は、接続元ホストにドメインユーザーでログオンすれば、
こちらの例の通り、Windows 認証で SQL Server にもログオンできます。
|
[2] |
Active Directory ドメイン環境ではない接続元から SQL Server にリモート接続したい場合は、事前に SQL Server 側で、認証方式を
SQL Server 認証と Windows 認証の混合モードに変更しておく必要があります。
CUI で変更する場合は PowerShell を管理者権限で起動して設定します。
|
Windows PowerShell Copyright (C) Microsoft Corporation. All rights reserved. # インスタンス名確認 PS C:\Users\Administrator> Get-ItemProperty -Path "HKLM:\Software\Microsoft\Microsoft SQL Server" | Out-String -Stream | Select-String "InstalledInstances" InstalledInstances : {MSSQLSERVER} # 認証モードを混合モードに変更 # MSSQL15.(確認したインスタンス名) PS C:\Users\Administrator> Set-ItemProperty -Path "HKLM:\Software\Microsoft\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQLSERVER" -Name "LoginMode" -Value 2 PS C:\Users\Administrator> Get-ItemProperty -Path "HKLM:\Software\Microsoft\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQLSERVER" -Name "LoginMode" LoginMode : 2 PSPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQLSERVER PSParentPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\MSSQL15.MSSQLSERVER PSChildName : MSSQLSERVER PSDrive : HKLM PSProvider : Microsoft.PowerShell.Core\Registry PS C:\Users\Administrator> Get-Service | Out-String -Stream | Select-String "SQL" Running MsDtsServer150 SQL Server Integration Services 15.0 Running MSSQLFDLauncher SQL Full-text Filter Daemon Launche... Running MSSQLSERVER SQL Server (MSSQLSERVER) Running MSSQLServerOLAP... SQL Server Analysis Services (MSSQL... Stopped SQLBrowser SQL Server Browser Stopped SQLSERVERAGENT SQL Server Agent (MSSQLSERVER) Running SQLTELEMETRY SQL Server CEIP service (MSSQLSERVER) Running SQLWriter SQL Server VSS Writer Running SSASTELEMETRY SQL Server Analysis Services CEIP (... Running SSISTELEMETRY150 SQL Server Integration Services CEI... # SQL Server 再起動 PS C:\Users\Administrator> Restart-Service MSSQLSERVER # Windows Firewall 稼働中の場合は データベースエンジン ポートを許可 PS C:\Users\Administrator> New-NetFirewallRule -Name "MSSQL" ` -DisplayName "SQL Server" ` -Description "Allow Database Engine" ` -Profile Any ` -Direction Inbound ` -Action Allow ` -Protocol TCP ` -Program Any ` -LocalAddress Any ` -RemoteAddress Any ` -LocalPort 1433 ` -RemotePort Any # ローカルホストから Windows 認証で接続して # SQL Server の管理者ユーザーを有効にしてパスワードを設定 PS C:\Users\Administrator> sqlcmd -S localhost 1> alter login sa enable; 2> alter login sa with password = 'password'; 3> go 1> exit # SQL Server の管理者ユーザーで SQL Server 認証でログイン PS C:\Users\Administrator> sqlcmd -S localhost -U SA Password: 1> # ログインできた |
[3] |
GUI で変更する場合は、SQL Server 稼働ホストに SSMS をインストールして設定します。
認証モードを変更します。Windows ファイアウォール稼働中の場合は、事前に [1433/TCP] を許可しておく必要があります。 SSMS を起動してデータベースエンジンに接続後、インスタンス名を右クリックして [プロパティ] を開きます。 |
[4] | 左ペインで [セキュリティ] を選択し、右ペインで [SQL Server 認証モードと Windows 認証モード] にチェックを入れて [OK] します。 |
[5] | インスタンス名を右クリックして [再起動] します。 |
[6] | SQL Server 管理ユーザーを有効化します。 左ペインで [セキュリティ] - [ログイン] と展開し、[sa] を右クリックして [プロパティ] を開きます。 |
[7] | 左ペインの [全般] で、SQL Server 管理者のパスワードを設定します。 |
[8] | 左ペインの [状態] で、[ログイン] を [有効] にして [OK] します。以上で完了です。 |
[9] |
リモートホストの Windows 10 側の設定です。
SQL Server Management Studio (SSMS) をダウンロードしてインストールします。
インストール後、SSMS を起動して、[認証] に [SQL Server 認証] を選択し、[ログイン] に、有効化した [SA] ユーザーとパスワードを指定してログインします。
⇒ https://docs.microsoft.com/ja-jp/sql/ssms/download-sql-server-management-studio-ssms |
[10] | SQL Server 認証でログインできました。 |
[11] |
コマンドで接続したい場合は [sqlcmd] コマンドを利用します。
[sqlcmd] コマンドをインストールすると、CUI での SQL Server への接続も可能です。
ただし、 [sqlcmd] は SSMS 18 からは含まれなくなったため、利用したい場合は別途インストールする必要があります。 ⇒ https://docs.microsoft.com/en-us/sql/tools/sqlcmd-utility?view=sql-server-ver15 |
Sponsored Link |