データ管理 (DMS) は、スキーマ設計機能を提供します。 この機能により、特定のR&D標準に基づいてデータベース内のテーブルのスキーマを設計できます。 開発環境、テスト環境、本番環境などの複数の環境間でスキーマの一貫性を確保するために、ビジネス要件に基づいてさまざまな業務分野のR&Dプロセスをカスタマイズできます。 このトピックでは、スキーマデザイン機能の使用方法について説明します。 次の例では、物理データベースが使用されます。
前提条件
データベースのタイプは次のいずれかです。
MySQL: ApsaraDB RDS for MySQL、PolarDB for MySQL、ApsaraDB MyBase for MySQL、PolarDB-X、およびその他のソースのMySQLデータベース
OceanBase
オラクル
説明この機能は、物理データベースと論理データベースの両方をサポートします。
データベースが属するデータベースインスタンスは、Secure Collaborationモードで管理されます。 詳細については、「インスタンスの制御モードの表示」をご参照ください。
スキーマを設計するデータベースの環境タイプは、スキーマ変更のセキュリティルールで指定された環境要件を満たしています。 詳細については、「インスタンスの環境タイプの変更」をご参照ください。
シナリオ
プロジェクトを開発したり、新しいビジネス要件を処理したり、ビジネスオペレーションを最適化したりする場合は、テーブルを作成してスキーマを変更する必要があります。 たとえば、フィールドまたはインデックスの作成または削除、フィールド属性の変更、インデックスの構成の調整が必要になる場合があります。 これらのシナリオでは、DMSのスキーマ設計機能を使用できます。
説明
カスタムR&Dプロセス中に、スキーマ変更のSQL文が特定のR&D標準に準拠しているかどうかを自動的にチェックします。 たとえば、この機能を使用して、運用環境で使用されているフィールドが削除されないようにすることができます。
検証済みのスキーマ変更スクリプトを1つの環境から別の環境に数回クリックするだけで公開できます。 この機能は、複数の環境が含まれる場合に適用でき、これらの環境間でスキーマの一貫性を保証します。 これにより、新しいスキーマが本番環境に公開されたときの成功率が向上します。
複数のユーザーがDMSコンソールで共同でスキーマを変更できるようにします。
使用上の注意
スキーマデザインチケットを送信して既存のテーブルを削除することはできません。 チケットの作成後に作成されたテーブルを削除できます。
変更がデータベースに適用されると、メタデータも同期されます。
説明SQLConsoleタブで
show create table table_name
またはdesc table_name
ステートメントを実行して、変更が有効かどうかを確認できます。
手順
DMSコンソールV5.0 にログインします。
上部のナビゲーションバーで、 を選択します。
説明DMSコンソールをシンプルモードで使用する場合は、コンソールの左上隅にあるアイコンの上にポインターを移動し、
を選択します。[スキーマデザイン] タブで、スキーマデザイン右上隅にあります。
スキーマデザインチケットを作成するためのパラメーターを設定し、[送信] をクリックします。 下表にパラメーターを示します。
パラメーター
必須
説明
ベースデータベースの変更
必須
スキーマ設計操作を実行するデータベース。 この例では、Security Collaborationモードのデータベースが選択されています。 データベースが属する環境のタイプは、データベースのセキュリティルールで構成されているR&D標準に準拠している必要があります。 R&Dプロセスの詳細については、「スキーマデザイン」をご参照ください。
利害関係者の変更
必須
スキーマ設計の利害関係者。 指定されたすべての利害関係者は、チケットの詳細を表示し、開発者が開発および承認プロセスを加速するのを支援できます。
説明DMS管理者およびデータベース管理者 (DBA) 以外の関係のないユーザーは、チケットの詳細を表示できません。
物理テーブルを作成します。
GUIを使用する
[物理テーブルの作成] をクリックします。
テーブルに関する基本情報を入力し、テーブルのフィールドとインデックスを変更します。
[保存] をクリックします。
SQL文の実行
[SQL文のインポート] をクリックします。
表示されるダイアログボックスで、必要に応じて
CREATE TABLE
またはALTER TABLE
ステートメントを入力し、[OK] をクリックします。たとえば、次のステートメントを実行して、
data_modify
という名前のテーブルを作成できます。CREATE TABLE `data_modify` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Primary key', `name` varchar(256) NOT NULL COMMENT 'Name', `phone` varchar(32) DEFAULT NULL COMMENT 'Phone number', `sex` varchar(32) DEFAULT NULL COMMENT 'Gender', `email` varchar(256) DEFAULT NULL COMMENT 'Email address', `remarks` varchar(1024) DEFAULT NULL COMMENT 'Remarks', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Personal information';
[Create Physical Table: data_modify] タブで、テーブル情報とスキーマを確認し、[Save] をクリックします。
説明上記の方法に加えて、SQLConsoleタブで物理テーブルを作成できます。 詳細については、「SQLConsoleタブのデータベースの管理」トピックの「テーブルの作成」セクションをご参照ください。
事前チェック結果メッセージで、事前チェック結果を表示します。
事前チェックに合格した場合は、正しいことを確認し、送信して保存します をクリックします。
警告のみが表示される場合は、警告を無視して保存を続行. または、閉じる をクリックし、R&D標準に基づいてテーブルスキーマを変更し、[保存] をクリックします。
エラーが報告された場合は、エラーの原因を確認し、閉じる をクリックし、R&D標準に基づいてテーブルスキーマを変更し、[保存] をクリックします。
説明DMSは、既定のセキュリティルールで設定されているR&D標準に基づいて、テーブルの作成または変更について上記のSQL文を検証し、エラーと警告がある場合はレポートします。
DMSは、テーブルの作成やフィールドとインデックスの変更に役立つ40近くのR&D標準を提供しています。 必要に応じて、セキュリティルールでR&D標準を設定できます。
事前チェックに合格すると、[プロジェクトホームページ] タブに移動します。 プロジェクトによって編集されたテーブル タブで、変更または作成したテーブルを表示し、必要に応じて他のテーブルを変更または削除できます。
スキーマの変更を基本データベースに適用します。
ベースラインライブラリの変更を実行する をクリックします。
では、ベースラインライブラリの変更を実行するパネル、ベースデータベース、実行戦略、およびスキーム変更スクリプトを表示し、確認 をクリックします。
スキーマ変更操作が承認された後、システムはスキーマ変更をベースデータベースに自動的に適用します。
説明ベースデータベースの [SQLConsole] タブで、スキーマの変更が期待どおりかどうかを確認できます。
デフォルトのセキュリティルールに基づいて、スキーマ変更のチケットを送信する必要があります。 カスタムセキュリティルールを使用することもできます。 たとえば、開発データベースのスキーマ変更に対して承認が不要であることを指定できます。 本番データベースでスキーマ変更チケットを承認できるユーザーを指定することもできます。
[次のノードに移動] をクリックします。 表示されるメッセージで、[次のノードに移動] をクリックします。
スキーマの変更を本番データベースに適用します。
[プロジェクトホームページ] タブで、ターゲットデータベースへの変更の実行.
では、ターゲットデータベースへの変更の実行パネルでターゲットデータベースを選択し、実行戦略をクリックし、確認 をクリックします・
説明複数のライブラリセットを追加する をクリックして、複数の運用データベースでスクリプトを実行することもできます。
スキーマ変更操作が承認された後、システムは自動的にスキーマ変更を本番データベースに適用します。 本番データベースの [SQLConsole] タブで、スキーマの変更が期待どおりかどうかを確認できます。
[次のノードに移動] をクリックします。 表示されるメッセージで、[次のノードに移動] をクリックします。
チケットがクローズされた後、各ステップをクリックして、変更レコードと公開レコードを表示できます。