このトピックでは、ApsaraDB RDS for MySQL インスタンスの標準アカウントを作成し、データ移行のさまざまなフェーズでアカウントに最小限の権限を付与する方法について説明します。
背景
ApsaraDB RDS for MySQL インスタンスは、特権アカウントと標準アカウントの 2 種類のデータベースアカウントをサポートしています。データ伝送サービスを使用して ApsaraDB RDS for MySQL インスタンスからデータを移行する場合は、次のルールに従ってください。
特権アカウントを使用する場合、デフォルトですべてのデータベースに対する読み取り/書き込み権限があります。
重要ApsaraDB RDS for MySQL インスタンスには、特権アカウントを 1 つだけ作成できます。
標準アカウントを使用する場合は、このトピックの説明に基づいてアカウントに権限を付与します。
標準アカウントの権限には、[読み取り専用]、[読み取り/書き込み]、[DDL のみ]、および [DML のみ] 権限が含まれます。詳細については、「アカウント権限」をご参照ください。
この例では、ApsaraDB RDS for MySQL インスタンスに標準アカウントが作成されます。ApsaraDB RDS for MySQL データソースを作成するときに、[ユーザー名] フィールドにこのアカウントを指定します。
ApsaraDB RDS for MySQL インスタンスの標準アカウントを作成する
[アカウント] ページに移動します。
ApsaraDB RDS for MySQL コンソール にログオンします。
[インスタンス] ページの左上隅で、ターゲットインスタンスが配置されているリージョンを選択します。次に、インスタンスの ID をクリックします。
インスタンスの詳細ページで、左側のナビゲーションウィンドウの [アカウント] をクリックします。
[アカウント] ページで、[アカウントの作成] をクリックします。
[アカウントの作成] ダイアログボックスで、パラメーターを設定します。
パラメーター
説明
データベースアカウント
データベースアカウントのユーザー名には、文字、数字、およびアンダースコア (_) を使用できます。文字で始まり、文字または数字で終わる必要があり、長さは 32 文字以下にする必要があります。
アカウントタイプ
[標準アカウント] を選択します。
承認済みデータベース
アカウントがアクセスできる 1 つ以上のデータベースを選択します。
左側の [未承認のデータベース] リストで、1 つ以上のデータベースを選択し、[>] をクリックして右側のリストに追加します。
右側の [承認済みデータベース] リストで、各データベースに対して [読み取り/書き込み (DDL および DML)]、[読み取り専用]、[DDL のみ]、または [DML のみ] 権限をアカウントに付与します。
右上隅にある [すべて設定] の横にあるボタンをクリックして、複数のデータベースに対して同じ権限をアカウントに付与できます。
新しいパスワード
パスワードは 8 ~ 32 文字の長さで、大文字、小文字、数字、特殊文字の 4 つの文字タイプのうち 3 つ以上を含める必要があります。サポートされている特殊文字は、! @ # $ % ^ & * ( ) _ + - = です。
パスワードの確認
パスワードをもう一度入力します。
備考
アカウントの説明を入力します。2 ~ 256 文字の長さである必要があります。
[OK] をクリックします。
ソース ApsaraDB RDS for MySQL インスタンスの標準アカウントに権限を付与する
次の表に、データ移行のさまざまなフェーズで ApsaraDB RDS for MySQL インスタンスの標準アカウントに必要な最小限の権限を示します。逆増分同期フェーズでソースアカウントに読み取り/書き込み権限を付与する場合、ソースに必要な権限は逆増分同期のデータ型によって異なります。たとえば、逆増分同期のデータ型が DDL の場合は、ソースアカウントに [DDL のみ] 権限を付与する必要があります。逆増分同期のデータ型が DML の場合は、ソースアカウントに [DML のみ] 権限を付与する必要があります。
増分同期では、データ伝送サービスは、ソースで DML または DDL 変更操作が実行された後に生成されたログを取得して解析し、ターゲットに書き込みます。
説明タスクの設定時に [増分同期] を選択した場合、アカウントにはソース内のすべてのテーブルに対する読み取り権限が必要です。そうでない場合、タスクが中断される可能性があります。
逆増分同期では、データ伝送サービスは、ターゲットで DML または DDL 変更操作が実行された後に生成されたログを取得して解析し、ソースに書き込みます。
テーブルタイプ | スキーマ移行 | フル移行 | 増分 DML 操作同期 | 増分 DDL 操作同期 | フル検証 | 逆増分同期 |
プライマリキーまたは NULL 以外のユニークキーを持つテーブル | 読み取り専用 | 読み取り専用 | 読み取り専用 | 読み取り専用 | 読み取り専用 |
|
プライマリキーまたは NULL 以外のユニークキーがないテーブル | 読み取り専用 | 読み取り専用 | 読み取り専用 | 読み取り専用 | サポートされていません |
|
ターゲット ApsaraDB RDS for MySQL インスタンスの標準アカウントに権限を付与する
テーブルタイプ | スキーマ移行 | フル移行 | 増分 DML 操作同期 | 増分 DDL 操作同期 | フル検証 | 逆増分同期 |
プライマリキーまたは NULL 以外のユニークキーを持つテーブル | 読み取り専用 | 読み取り専用 | 読み取り専用 | 読み取り専用 | 読み取り専用 |
|
プライマリキーまたは NULL 以外のユニークキーがないテーブル | ターゲットが ApsaraDB RDS for MySQL インスタンスの場合、データ伝送サービスは、プライマリキーまたは NULL 以外のユニークキーがないテーブルの移行または同期をサポートしていません。 |