MySQL および MariaDB を使用するための DBMS アカウントの設定
必須条件
DBMS アカウントに権限を割り当てる前に、次のアクションを実行します:
- ローカル管理者アカウントでシステムにログインしていることを確認します。
- MySQL または MariaDB を使用するための環境をインストールします。
管理サーバーをインストールするための DBMS アカウントの設定
管理サーバーのインストール用に DBMS アカウントを設定するには:
- DBMS のインストール時に作成した root アカウントで、MySQL または MariaDB を使用するための環境を実行します。
- パスワード付きの内部 DBMS アカウントを作成します。管理サーバーインストーラー(以降、インストーラーとも表記)と管理サーバーサービスは、この内部 DBMS アカウントを使用して DBMS にアクセスします。
パスワード付きの DBMS アカウントを作成するには、次のコマンドを実行します:
/* KSCAdmin という名前のユーザーを作成し、KSCAdmin のパスワードを指定します */
CREATE USER 'KSCAdmin' IDENTIFIED BY '<
パスワード
>';
MySQL 8.0 以前を DBMS として使用する場合、これらのバージョンでは「caching_sha2_password」認証がサポートされていないことに注意してください。既定の認証を「Caching SHA2 password」から「MySQL native password」に変更します:
- 「mysql_native_password」認証を使用する DBMS アカウントを作成するには、次のコマンドを実行します:
CREATE USER 'KSCAdmin'@'%' IDENTIFIED WITH mysql_native_password BY '<
パスワード
>';
- 既存の DBMS アカウントの認証を変更するには、次のコマンドを実行します:
ALTER USER 'KSCAdmin'@'%' IDENTIFIED WITH mysql_native_password BY '<
パスワード
>';
- 「mysql_native_password」認証を使用する DBMS アカウントを作成するには、次のコマンドを実行します:
- 作成した DBMS アカウントに次の権限を付与します:
- スキーマ権限:
- 管理サーバーデータベース:ALL(GRANT OPTION を除く)
- システムスキーム(mysql および sys):SELECT、SHOW VIEW
- sys.table_exists ストアドプロシージャ:EXECUTE
- すべてのスキームに対するグローバル権限:PROCESS、SUPER
作成した DBMS アカウントに必要な権限を付与するには、次のスクリプトを実行します:
/* KSCAdmin に権限を付与します */
GRANT USAGE ON *.* TO 'KSCAdmin';
GRANT ALL ON kav.* TO 'KSCAdmin';
GRANT SELECT, SHOW VIEW ON mysql.* TO 'KSCAdmin';
GRANT SELECT, SHOW VIEW ON sys.* TO 'KSCAdmin';
GRANT EXECUTE ON PROCEDURE sys.table_exists TO 'KSCAdmin';
GRANT PROCESS ON *.* TO 'KSCAdmin';
GRANT SUPER ON *.* TO 'KSCAdmin';
MariaDB 10.5 以前を DBMS として使用する場合、EXECUTE 権限を付与する必要はありません。この場合、次のコマンドをスクリプトから除外します:
GRANT EXECUTE ON PROCEDURE sys.table_exists TO 'KSCAdmin'
。 - スキーマ権限:
- DBMS アカウントに付与された権限のリストを表示するには、次のコマンドを実行します:
SHOW grants for 'KSCAdmin';
- 管理サーバーデータベースを手動で作成するには、次のスクリプトを実行します(このスクリプトでは、管理サーバーデータベース名は kav です):
CREATE DATABASE kav
DEFAULT CHARACTER SET ascii
DEFAULT COLLATE ascii_general_ci;
DBMS アカウントを作成するスクリプトで指定したものと同じデータベース名を使用します。
- 管理サーバーをインストールします。
インストールが完了すると、管理サーバーデータベースが作成され、管理サーバーを使用できるようになります。