背景
ODCの構造比較機能は、同一プロジェクト内で同種データソースのデータベースオブジェクト構造を比較・分析し、変更スクリプトを生成することをサポートします。
このドキュメントでは、ODCを使用して構造比較タスクを提出し、2つのデータベースオブジェクト構造を比較・分析する方法について説明します。
このドキュメントでは、構造比較の作成を例に、同一プロジェクト内の2つのOceanBase MySQLデータソースにあるemployeeテーブルの構造を比較する方法を紹介します。
説明
本文中で使用されているデータはすべてサンプルデータです。実際の状況に応じてデータを置き換えてください。
注意事項
リンクのサポート:
- OceanBase MySQLからOceanBase MySQLへ。
- OceanBase OracleからOceanBase Oracleへ。
比較対象はテーブルオブジェクトのみであり、比較する属性の範囲は列、主キー、制約、インデックス、パーティション、テーブル属性に限定されます。
列属性については、型、文字セット、照合順序、コメント、デフォルト値のみを比較できます。
パーティションについては、パーティションのみを比較でき、サブパーティションはサポートされていません。
テーブル属性については、文字セット、照合順序、コメントのみを比較できます。
OceanBase MySQLはCHECK制約の比較検査をサポートしていません。
OceanBase MySQL V1.4.79以前のバージョンでは、sysテナントのクエリ権限がない場合、パーティション属性の比較はサポートされません。
生成された総SQL変更スクリプトのファイルサイズが1MBを超える場合、SQLプレビュー には直接表示されず、ファイル内容が上限を超えているというメッセージが表示されます。その場合は、SQLをダウンロード をクリックして、総変更スクリプトの内容を確認する必要があります。
操作手順

ユーザーが構造比較タスクを発行します。
タスクの承認プロセスが実行されます。
構造比較タスクが実行され、構造比較結果が表示されます。
新しいデータベース変更タスクを作成して構造を同期します。
構造比較の新規作成
チケット タブで、スキーマの比較 > 構造比較の新規作成 をクリックします。

構造比較の新規作成 ページで、以下の情報を入力します。
情報項目説明ソースデータベース ソースデータベースを選択します。 ターゲットデータベース 比較対象のデータベースを選択します。 比較範囲 一部テーブル または すべてのテーブル を選択できます。 - 一部テーブル:比較対象の ソーステーブルの選択 ウィンドウで、比較するオブジェクトにチェックを入れます。
- すべてのテーブル:ソースデータベースとターゲットデータベースのすべてのテーブルオブジェクトを比較します。
タスク設定 自動実行 タスクを設定します。 説明 タスクの説明 テキストボックスに、200文字以内の説明を入力できます。この項目はオプションです。 作成する をクリックして、構造比較の新規作成を完了します。
タスクが生成された後、チケット > 構造比較 リストでタスク情報を確認できます。

上図のように、操作 項目の 表示 ボタンをクリックして、構造比較の詳細を確認します。

構造同期の開始 をクリックして、データベース変更タスクを開始します。

構造比較タスクの表示
タスク情報
チケット の構造比較リストで、リスト操作列の 表示 ボタンをクリックします。

表示されたタスク詳細パネルで、タスク情報 タブをクリックし、タスクの基本情報と設定情報を確認します。

タスク情報パネルの右下で、構造同期を開始、【UI-TERM key="odc.TaskManagePage.component.TaskTools.InitiateAgain">再度開始】、【UI-TERM key="src.component.Task.component.ActionBar.DBA6CB6E">SQLをダウンロード をクリックすると、データベース変更の新規作成、タスクの再開始、SQL変更スクリプトのダウンロードができます。
タスクの流れ
表示されたタスク詳細パネルで、タスクの流れ タブをクリックし、タスクの開始状態、承認状況、実行状況、完了結果 などの情報を確認します。
タスクログ
タスク詳細パネルで、タスクログ タブをクリックすると、タスクのすべてのログとアラートログを確認できます。
項目 |
説明 |
|---|---|
| 全ログ | 全ログには、タスクの INFO、ERROR、WARN ログなどの全量情報が表示されます。 検索、ダウンロード、コピー ボタンをクリックすると、全ログ情報を検索、ダウンロード、またはコピーできます。 |
| アラートログ | アラートログには、タスクの ERROR および WARN ログが個別に表示されます。タスクが失敗した場合、アラートログからエラー情報を確認できます。 検索、ダウンロード、コピー ボタンをクリックすると、アラートログ情報を検索、ダウンロード、またはコピーできます。 |