転送先 - MySQL
  • 28 Apr 2022
  • 1 分で読み終わります
  • ダーク
    ライト

転送先 - MySQL

  • ダーク
    ライト

概要

MySQLへデータを転送する設定のヘルプページです。

対応プロトコル

設定項目

STEP1 基本設定

項目名 必須 デフォルト値 内容
MySQL接続情報 Yes - あらかじめ登録してある接続情報から、今回の転送設定に必要な権限を持つものを選択します。
データベース名 Yes - 転送先となるMySQLの存在するデータベース名を指定してください。
記入欄の下にあるボタンを押すことでデータベースの一覧を読み込むことも可能です。
テーブル Yes - 転送先のテーブル名を入力して下さい。
存在しない場合は転送時に新しく作成されます。
転送モード Yes insert 下記の転送モードについてをご覧ください。
転送前に実行するクエリ No - MySQLからデータ転送する前に実行したいSQLを入力します。
なお、転送モード「replace」を選択した場合、このクエリは実行されません。
転送完了後に実行するクエリ No - MySQLからデータ転送完了した後に実行したいSQLを入力します。

転送モードについて

モード 方式 詳細
insert 追記 テーブルへの追記を行います。
はじめに一時テーブルを生成してそこにデータを投入し、最後に一時テーブルから転送先テーブルへのINSERTを行います。
そのため、転送が途中で失敗した際に中途半端なデータが転送先テーブルに残ることがありません。
insert_direct 追記 テーブルへの追記を行います。
一時テーブル等は作成せず、直接データを投入します。
そのため、転送が途中で失敗した際には中途半端な状態のデータが残る場合があります。
truncate_insert 洗い替え テーブルの洗い替えを行います。
はじめに一時テーブルを生成してそこにデータを投入し、
最後に一時テーブルから転送先テーブルへのINSERTを行います。なお、INSERTの直前にtruncateを行うため、洗い替えとなります。
転送先テーブルのindex情報等は維持されます。
replace 洗い替え テーブルの洗い替えを行います。
はじめに一時テーブルを生成してそこにデータを投入し、
最後に転送先テーブルと一時テーブルのテーブル名を入れ替えることで、転送を完了します。
転送先テーブルのindex情報等は失われます。
merge UPSERT テーブルのUPSERTを行います。
はじめに一時テーブルを生成し、そこにデータをすべて投入します。
最後に以下の様なクエリを実行し、転送先テーブルに対して ON DUPLICATE KEY UPDATE で主キーによる追記&更新を行います。
INSERT INTO <target_table> SELECT * FROM <intermediate_table_1> UNION ALL SELECT * FROM <intermediate_table_2> UNION ALL ... ON DUPLICATE KEY UPDATE ...
merge_direct UPSERT テーブルのUPSERTを行います。
一時テーブル等は作成せず、直接データを投入します。
転送先テーブルに対して ON DUPLICATE KEY UPDATE で主キーによる追記&更新を行います。

この記事は役に立ちましたか?