データ管理 (DMS) でデータベースのテーブルのスキーマを変更すると、DMSは最新のスキーマをデータベースのスキーマバージョンリストに追加します。 スキーマバージョンをダウンロードして比較し、スキーマバージョンリストで以前のスキーマバージョンを復元できます。
前提条件
テーブルまたはテーブルが属するデータベースに対するクエリ権限があること。 詳細については、「所有権限の表示」をご参照ください。
概要
スキーマバージョンはデータベースに基づいて定義され、データベース内のすべてのテーブルのスキーマ情報を格納します。 データベース内のテーブルのスキーマが変更された場合、新しいスキーマバージョンが保存されます。 DMSで次の操作を実行すると、新しいスキーマバージョンが保存されます。
SQL文はSQLConsoleタブで実行され、スキーマを変更します。
SQL文は、通常のデータ変更、ロックフリーデータ変更、スキーマ設計、またはスキーマ同期のチケットを送信すると、スキーマを変更するために実行されます。
SQL文は、スキーマを変更するためにDMS管理者によってSQLタスクで実行されます。
DMS以外の環境でデータベースのテーブルのスキーマが変更された場合、DMSでデータベースのメタデータを同期して、最新のスキーマを取得して保存できます。 詳細については、「データベースインスタンスのデータディクショナリの同期」をご参照ください。
データベースが存在するデータベースインスタンスがSecurity Collaborationモードで管理されている場合、SQLConsoleタブのアイコンをクリックして、データベースのメタデータを同期することもできます。
使用上の注意
以下のデータベースエンジンがサポートされています。
MySQL: ApsaraDB RDS for MySQL、PolarDB for MySQL、PolarDB-X、AnalyticDB for MySQL、およびMySQLモードのOceanBaseデータベース
PostgreSQL: ApsaraDB RDS for PostgreSQL、PolarDB for PostgreSQL、およびAnalyticDB for PostgreSQL
PolarDB for PostgreSQL (Oracleと互換)
SQL Server
MariaDB
オラクル
次の内容は、異なる制御モードで管理されるデータベースインスタンスの各データベースに対して保持できるスキーマバージョンの最大数を示しています。
柔軟な管理: 3
安定した変化: 20
セキュリティコラボレーション: 無制限
次のデータベースのスキーマバージョンは管理できません。
1,024を超えるテーブルを含むデータベース
MySQLデータベースインスタンスのinformation_schemaやsysデータベースなどのシステムデータベース
手順
DMSコンソールV5.0 にログインします。
[データベースバージョン一覧] ページに移動するには、次のいずれかの方法を使用します。
DMSコンソールの左側のナビゲーションウィンドウで、管理するデータベースが存在するデータベースインスタンスをクリックし、データベースを右クリックして、[バージョン管理] を選択します。
管理するデータベースの [SQLConsole] タブで、アイコンをクリックします。 データベースバージョンリストページが表示されます。
[インスタンス] ページの [データベースリスト] タブで、管理するデータベースを見つけ、[操作] 列の [詳細] にポインターを移動し、[バージョン管理] を選択します。 この方法は、DMS管理者またはデータベース管理者 (DBA) にのみ適用できます。
[データベースバージョン一覧] ページで、管理するスキーマのバージョン番号を見つけます。 次の表に、実行できる操作を示します。
API 操作
説明
変更の詳細を表示
スキーマバージョンの生成に使用されるSQLスクリプトを表示します。
ロールバックデータ
データをスキーマバージョンにロールバックします。
テーブル構造の比較
スキーマバージョンを別のデータベースに同期するか、スキーマバージョンを別のデータベースのスキーマバージョンと比較します。 詳細については、「スキーマの同期」をご参照ください。