SQL Serverの設定をする

ここでは、本ソフトウェアのデータベースとしてSQL Serverを使用する場合に、必要な設定について説明します。
本ソフトウェアをインストールする前に、運用環境に応じて、以下の設定を行っておく必要があります。
重要
本ソフトウェアのマネージャーとSQL Serverが別のコンピューターにインストールされていても、本ソフトウェアは動作します。ただし、別のコンピューターにインストールされたSQL Serverを使用する場合は、SQL Server 認証を使用してください。Windows認証は使用できません。

本ソフトウェアが使用するユーザーを作成する

本ソフトウェアがSQL Serverに接続する際に使用するユーザーを作成して、そのユーザーにサーバーロールを付与します。インストール済みのSQL Serverを使用する場合と、新規にSQL Serverをインストールする場合で、設定方法が異なります。

SQL Serverがインストールされている場合

重要
SQL Server認証を使用する場合に、SQL Serverのシステム管理者「sa」を、本ソフトウェアが使用するユーザーとして使用するときは、以下の操作は不要です。本ソフトウェアのインストール時に、システム管理者のユーザー名「sa」とパスワードを入力してください。
メモ
インスタンス名が「MSSQLSERVER」の場合は、以下の手順で実行するコマンドの「\<SQL Serverのインスタンス名>」を指定しないでください。
1.
SQL Serverの管理者権限を持つユーザーで、コンピューターにログオンします。
2.
コマンドプロンプトを起動します。
3.
本ソフトウェアが使用するユーザーを作成します。以下のコマンドを実行します。
Windows認証を使用する場合
システムユーザー「NT AUTHORITY\SYSTEM」を作成します。
sqlcmd -S localhost\<SQL Serverのインスタンス名> -E -Q "CREATE LOGIN [NT AUTHORITY\SYSTEM] FROM WINDOWS"
SQL Server認証を使用する場合
任意のユーザー名とパスワードを設定します。
sqlcmd -S localhost\<SQL Serverのインスタンス名> -E -Q "CREATE LOGIN [<ユーザー名>] WITH PASSWORD = '<パスワード>'"
メモ
本ソフトウェアのインストール時に、ここで設定したユーザー名とパスワードを入力してください。
4.
本ソフトウェアが使用するユーザーに、サーバーロール「sysadmin」を付与します。以下のコマンドを実行します。
Windows認証を使用する場合
sqlcmd -S localhost\<SQL Serverのインスタンス名> -E -Q "ALTER SERVER ROLE sysadmin ADD MEMBER [NT AUTHORITY\SYSTEM]"
サーバーロール「dbcreator」を付与した場合も、本ソフトウェアは動作します。運用に合わせて設定してください。
SQL Server認証を使用する場合
sqlcmd -S localhost\<SQL Serverのインスタンス名> -E -Q "ALTER SERVER ROLE sysadmin ADD MEMBER [<ユーザー名>]"

SQL Serverを新規インストールする場合

本ソフトウェアに対応しているSQL Serverをインストールします。インストール時に、SQL Serverのインスタンス名と認証モードを設定します。インストールしたあとに、本ソフトウェアが使用するユーザーの設定をします。
ここでは、SQL Server 2017 Expressの手順を説明します。
メモ
本ソフトウェアに対応しているSQL Serverについては、以下を参照してください。
1.
管理者権限を持つユーザーで、コンピューターにログオンします。
2.
SQL Server Expressのインストーラーを実行します。
3.
[インストールの種類を選びます]から[カスタム]を選択します。
4.
インストール先フォルダーを指定したあと、[インストール]をクリックします。
インストールパッケージのダウンロードが完了すると、[SQL Server インストール センター]が表示されます。
5.
[SQL Server の新規スタンドアロン インストールを実行するか、既存のインストールに機能を追加]をクリックします。
6.
ウィザードにしたがってインストールを進めます。
Windowsファイアウォールが有効になっている場合は警告が表示されますが、このままインストールを続けます。
7.
[機能の選択]画面で、インストールする機能を選択します。
以下の項目にチェックマークが付いていることを確認します。
[データベース エンジンサービス]
[SQL Server レプリケーション]
[SQL クライアント接続 SDK]
[Machine Learning サービス(データベース内)]とその下位の機能は、本ソフトウェアの動作には必要ありません。インストールしない場合は、チェックマークを外します。
他の項目は、初期値から変更する必要はありません。
[次へ]をクリックします。
8.
[インスタンスの構成]画面で、インスタンスを設定したあと、[次へ]をクリックします。
メモ
本ソフトウェアのインストール時に、ここで設定したインスタンス名を入力してください。
9.
[サーバーの構成]画面の[サービス アカウント]タブで、以下の表示になっていることを確認したあと、[次へ]をクリックします。
10.
[データベースエンジンの構成]画面の[サーバーの構成]タブで、認証モードとSQL Server管理者の設定をします。
Windows認証を使用する場合
[認証モード]から[Windows 認証モード]を選択します。
[SQL Server 管理者の指定]で[追加]をクリックします。
[ユーザーまたはグループの選択]ダイアログボックスが表示されます。
[選択するオブジェクト名を入力してください]に「SYSTEM」と入力したあと、[OK]をクリックします。
[データベースエンジンの構成]画面に戻ります。
[SQL Server 管理者の指定]に、「NT AUTHORITY\SYSTEM(SYSTEM)」が表示されていることを確認します。
[次へ]をクリックします。
SQL Server認証を使用する場合
[認証モード]から[混合モード (SQL Server 認証とWindows 認証)]を選択します。
[パスワードの入力]と[パスワードの確認入力]に、SQL Serverのシステム管理者「sa」用の任意のパスワードを入力します。
[次へ]をクリックします。
11.
引き続き、ウィザードにしたがってインストールを進めます。
12.
[完了]画面が表示されたら、[閉じる]をクリックします。
13.
コンピューターを再起動します。
引き続き、本ソフトウェアが使用するユーザーの設定をします。
重要
SQL Server認証を使用する場合に、SQL Serverのシステム管理者「sa」を、本ソフトウェアが使用するユーザーとして使用するときは、以下の操作は不要です。本ソフトウェアのインストール時に、システム管理者のユーザー名「sa」とパスワードを入力してください。
14.
SQL Serverの管理者権限を持つユーザーで、コンピューターにログオンします。
15.
コマンドプロンプトを起動します。
16.
本ソフトウェアが使用するユーザーの設定をします。
メモ
インスタンス名が「MSSQLSERVER」の場合は、以下の手順で実行するコマンドの「\<SQL Serverのインスタンス名>」を指定しないでください。
Windows認証を使用する場合
本ソフトウェアが使用するユーザー「NT AUTHORITY\SYSTEM」に、サーバーロール「sysadmin」を付与します。以下のコマンドを実行します。
sqlcmd -S localhost\<SQL Serverのインスタンス名> -E -Q "ALTER SERVER ROLE sysadmin ADD MEMBER [NT AUTHORITY\SYSTEM]"
サーバーロール「dbcreator」を付与した場合も、本ソフトウェアは動作します。運用に合わせて設定してください。
SQL Server認証を使用する場合
本ソフトウェアが使用するユーザーを作成します。以下のコマンドを実行します。
任意のユーザー名とパスワードを設定します。
sqlcmd -S localhost\<SQL Serverのインスタンス名> -E -Q "CREATE LOGIN [<ユーザー名>] WITH PASSWORD = '<パスワード>'"
メモ
本ソフトウェアのインストール時に、ここで設定したユーザー名とパスワードを入力してください。
本ソフトウェアが使用するユーザーに、サーバーロール「sysadmin」を付与します。以下のコマンドを実行します。
sqlcmd -S localhost\<SQL Serverのインスタンス名> -E -Q "ALTER SERVER ROLE sysadmin ADD MEMBER [<ユーザー名>]"

データベースを事前に作成する

本ソフトウェアのインストーラーは、本ソフトウェア用のデータベースを作成して、本ソフトウェアが使用するユーザーにデータベースロール「db_owner」を付与します。そのため、通常は、事前にデータベースを作成しておく必要はありません。データベースの運用ルールが決まっていて、あらかじめ作成しておく必要がある場合にのみ、以下の操作を行います。
重要
本ソフトウェアが使用するデータベースの名称は、「ManagementConsole」で固定です。他の名称は使用できません。
データベースを事前に作成した場合は、本ソフトウェアのインストール時に、[使用するデータベース]から[既存のデータベースを使用する]を選択してください。
メモ
インスタンス名が「MSSQLSERVER」の場合は、以下の手順で実行するコマンドの「\<SQL Serverのインスタンス名>」を指定しないでください。
1.
SQL Serverの管理者権限を持つユーザーで、コンピューターにログオンします。
2.
コマンドプロンプトを起動します。
3.
本ソフトウェアが使用するデータベースを作成します。以下のコマンドを実行します。
sqlcmd -S localhost\<SQL Serverのインスタンス名> -E -Q "CREATE DATABASE [ManagementConsole]"
4.
本ソフトウェアが使用するユーザーに、手順3で作成したデータベースのデータベースロール「db_owner」を付与します。以下のコマンドを実行します。
sqlcmd -S localhost\<SQL Serverのインスタンス名> -E -Q "ALTER AUTHORIZATION ON DATABASE::[ManagementConsole] TO [<ユーザー名>]"

データベースサーバーの動作環境を確認する

本ソフトウェアをSQL Serverとは別のコンピューターにインストールする場合は、SQL Serverがインストールされているコンピューターで、以下の点を確認しておいてください。
ネットワークサポート機能
本ソフトウェアからデータベースに接続できるように、ネットワークサポート機能が有効になっていることを確認します。詳細は、以下を参照してください。
データベースのネットワークサポート機能を確認する
Windowsファイアウォールの設定
ファイアウォール機能が有効になっている場合は、本ソフトウェアが使用するデータベースのインスタンスを、ファイアウォール経由の通信が許可されたアプリとして登録します。
スリープモードへの移行機能
スリープモードへ移行しない設定になっていることを確認します。

データベースのネットワークサポート機能を確認する

本ソフトウェアが使用するデータベースのインスタンスの設定で、ネットワークサポート機能を確認して、必要に応じて有効化します。ここでは、SQL Server 2017 Expressの手順を説明します。
1.
スタートメニューから、[SQL Server 構成マネージャー]を選択します。
[Sql Server Configuration Manager]が表示されます。
2.
左側のツリーで、[SQL Server ネットワークの構成]を展開したあと、[<インスタンス名>のプロトコル]をダブルクリックします。
本ソフトウェアが使用するデータベースのインスタンス名を、ダブルクリックします。
3.
右側のウィンドウで、プロトコルの状態を確認します。
以下のプロトコルの[状態]が[有効]になっていることを確認します。
共有メモリ
名前付きパイプ
TCP/IP
プロトコルの[状態]が[無効]になっている場合は、右クリックして[有効化]を選択します。
4.
左側のツリーで、[SQL Server のサービス]を選択します。
5.
右側のウィンドウで、[SQL Server (<インスタンス名>)]を右クリックして、[再起動]を選択します。
本ソフトウェアが使用するデータベースのインスタンス名を、ダブルクリックします。
データベースが再起動されます。
6.
右側のウィンドウで、[SQL Server Browser]の状態を確認します。
[開始モード]が[自動]または[手動]の場合
[状態]が[実行中]になっていることを確認します。
[状態]が[停止]になっている場合は、右クリックして[開始]を選択します。
[開始モード]が[その他 (ブート、システム、無効または不明)]の場合
右クリックして、[プロパティ]を選択します。
[SQL Server Browser のプロパティ]ダイアログボックスが表示されます。
[サービス]タブをクリックします。
[開始モード]から[自動]または[手動]を選択したあと、[OK]をクリックします。
[Sql Server Configuration Manager]に戻ります。
[状態]が[開始]になっていることを確認します。
[状態]が[停止]になっている場合は、右クリックして[開始]を選択します。
メモ
[開始モード]から[自動]を選択すると、コンピューターを起動するたびに、このサービスが自動で起動されます。
7.
[Sql Server Configuration Manager]を閉じます。