MySQLシェルを使用したインポート

Oracle Cloud Infrastructureコンピュート・インスタンスのMySQLシェルを使用して、データをHeatWaveサービスDBシステムにインポートします。

ノート

スタンドアロンDBシステムへの迅速なインポート、クラッシュ・リカバリの無効化、またはデータ・インポート機能の使用。クラッシュ・リカバリの有効化または無効化およびデータ・インポート機能を使用したインポートを参照してください。
このタスクでは次が必要です:
  • コンピュート・インスタンスでMySQLシェルを実行できるようにする、MySQL DBシステムへのアクセス権を持つコンピュート・インスタンスへのSSHアクセス。ネットワーキングを参照してください。
  • MySQL Shell 8.0.27以上。
  • ダンプ・ファイルがオブジェクト・ストレージ・バケットに格納されている場合、有効な構成ファイル。デフォルトの場所にCLIをインストールして構成した場合は、有効な構成ファイルがあります。CLIのインストールや構成を行っていない場合は、インストールするか、手動で構成ファイルを作成する必要があります。SDKおよびCLIの構成ファイルを参照してください。
  • インポートされたデータに対応できる十分なストレージと、インポートに十分なネットワーク帯域幅。
MySQL DBシステムにデータをインポートするには、次を実行します:
  1. Oracle Cloud Infrastructureコンピュート・インスタンスでMySQLシェルを実行します。
  2. \jsと入力して[Enter]を押し、JavaScript入力タイプに切り替えます。
  3. 次のコマンドを実行して、DBシステムのエンドポイントに接続してグローバル・セッションを開始します:
    \c <UserName>@<DBSystemEndpointIPAddress>
    • \c: 新しい接続を確立するためのシェル・コマンドを指定します。
    • <UserName>: DB Systemのユーザー名を指定します。
    • <DBSystemEndpointIPAddress>: DBシステムのエンドポイントのIPアドレスを指定します。
  4. Oracle Cloud Infrastructureコンピュート・インスタンスのローカル・ファイル・システムにあるダンプをインポートする場合は、次のコマンドを実行して、HeatWaveサービスDBシステムにデータをインポートします:
    util.loadDump("<URL>", {waitDumpTimeout: <TimeinSeconds> , updateGtidSet: "append" })
    • util.loadDump: DBシステムにデータをインポートするためのコマンドを指定します。
    • <URL>: ダンプ・ファイルを含むローカル・ディレクトリへのパスを指定します。たとえば、/home/opc/dumpです。
    • waitDumpTimeout: (オプション)作成中のダンプを適用できます。表が使用可能になるとロードされ、新しいデータがダンプの場所に到着しなくなった後、ユーティリティは指定された秒数待機します。タイムアウトが経過すると、ユーティリティーはインポートを中止します。
    • updateGtidSet:"append": (オプション)ダンプ・メタデータに記録されているgtid_executed GTIDセットのトランザクションIDをDBシステムのgtid_purged GTIDセットに追加します。これにより、ダンプ・ファイルのエクスポート元のMySQLインスタンスからのインバウンド・レプリケーションを有効にするために、DBシステム内のGTIDセットが構成されます。
  5. Oracle Cloud Infrastructure Object Storageバケットからダンプをインポートする場合は、次のコマンドを実行して、HeatWaveサービスDBシステムにデータをインポートします:
    util.loadDump("<URL>", {threads: <Number>, osBucketName: "<MDSBucket>", waitDumpTimeout: <TimeinSeconds> , updateGtidSet: "append" })
    • util.loadDump: DBシステムにデータをインポートするためのコマンドを指定します。
    • <URL>: ダンプ・ファイルが作成されたときにoutputUrlパラメータを使用して割り当てられたバケット内のパス接頭辞を指定します。
    • threads: (オプション) DBシステムにデータのチャンクをアップロードするために使用するパラレル・スレッドの数を指定します。デフォルト値は4です。
    • osBucketName: オブジェクト・ストレージ・バケットの名前を指定します。
    • waitDumpTimeout: (オプション)作成中のダンプを適用できます。表が使用可能になるとロードされ、新しいデータがダンプの場所に到着しなくなった後、ユーティリティは指定された秒数待機します。タイムアウトが経過すると、ユーティリティーはインポートを中止します。
    • updateGtidSet:"append": (オプション)ダンプ・メタデータに記録されているgtid_executed GTIDセットのトランザクションIDをDBシステムのgtid_purged GTIDセットに追加します。これにより、ダンプ・ファイルのエクスポート元のMySQLインスタンスからのインバウンド・レプリケーションを有効にするために、DBシステム内のGTIDセットが構成されます。
  6. (オプション) util.loadDumpコマンドでupdateGtidSet:"append"オプションを指定しなかった場合は、次を実行してDBシステムのgtid_purged GTIDセットを更新できます:
    1. @.jsonダンプ・ファイルからgtid_executedの値を取得します。
    1. 次のコマンドを使用してDBシステムに接続し、GTIDセットをgtid_purgedに追加します:
      CALL sys.SET_GTID_PURGED("+<gtidSet>")
      このコマンドは、DBシステムでストアド・プロシージャを実行して、システム変数値を変更します。
      • <gtidSet>は、@.jsonダンプ・ファイルのgtidExecutedフィールドの値です。
      • +記号は、GTIDセットをDBシステムのgtid_purgedシステム変数に追加します。
データがDBシステムにインポートされます。