1.2. MySQL サーバーの設定
1.2.1. Debezium の MySQL ユーザーの作成
Debezium MySQL コネクターが監視するすべてのデータベースに対して、適切なパーミッションで MySQL ユーザーを定義する必要があります。
前提条件
- MySQL サーバーが必要です。
- 基本的な SQL コマンドを知っている必要があります。
手順
- MySQL ユーザーを作成します。
mysql> CREATE USER 'user'@'localhost' IDENTIFIED BY 'password';
- 必要なパーミッションをユーザーに付与します。
mysql> GRANT SELECT, RELOAD, SHOW DATABASES, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'user' IDENTIFIED BY 'password';
各 パーミッションの注記については、説明 されているパーミッションを参照してください。
グローバル読み取り ロックを許可しない Amazon RDS や Amazon Aurora などのホストオプションを使用する場合は、テーブルレベルのロックを使用して 整合性スナップショット を作成します。この場合は、作成するユーザーに LOCK_TABLES
パーミッションも付与する必要があります。詳細は MySQL コネクターの仕組みの概要 を参照してください。
- ユーザーのパーミッションの最終処理を行います。
mysql> FLUSH PRIVILEGES;
1.2.1.1. パーミッションの説明
permission/item | 説明 |
---|---|
| コネクターがデータベースのテーブルから行を選択できるようにする 注記 これは、スナップショットを実行する場合にのみ使用されます。 |
|
内部キャッシュのクリアまたはリロード、テーブルのフラッシュ、またはロックの取得を行う 注記 これは、スナップショットを実行する場合にのみ使用されます。 |
|
注記 これは、スナップショットを実行する場合にのみ使用されます。 |
| コネクターが MySQL サーバーの binlog に接続し、読み取りできるようにします。 |
| コネクターが以下のステートメントを使用できるようにします。
重要 これは常にコネクターに必要です。 |
| パーミッションが適用される データベース を識別します。 |
| パーミッションが付与される ユーザー を指定します。 |
| ユーザーの パスワード を指定します。 |