embulkを使って、mysql→mysqlにデータを定期的にコピーしています。
最初下記のようにtrancate_insertを使用していたのですが、テーブルのidがauto_incrementalであったために実行の都度idが増えて行っていました。
table: {{ table }} mode: trancate_insert
カラム情報は下記のとおりです
+-------------+------------------+------+-----+-------------------+-----------------------------+ | Field | Type | Null | Key | Default | Extra | +-------------+------------------+------+-----+-------------------+-----------------------------+ | id | int(10) unsigned | NO | PRI | NULL | auto_increment | | personal_id | int(32) unsigned | NO | MUL | NULL | | | school_id | int(11) | NO | | NULL | |
そこで下記のようにmergeを指定していたのですが、これがどれをkeyとしてmergeしているのかがわからずしらべていたら
table: {{ table }} mode: merge
merge_ruleのオプションがあったので、下記のように設定したらpersonal_idが同じものは上書きしないと考えてよろしいでしょうか?
table: {{ table }} mode: merge merge_rule: [personal_id=VALUES(`personal_id`)]
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。