以前の仕事では、次のステートメントを使用して本番環境から簡単にデータをコピーできました。
from テーブル名@UNIXPROD2 INSERT INTO テーブル名@UNIXTEST2
私の現在の仕事のデータベースは、この方法でセットアップされていません。
そのため、MySQL 5.0+ についていくつか調査を行いました。これは、私たちが顧客の 1 人に使用しているものだからです。そして、FEDERATEDテーブルに出くわしたので、読んでいるときにこれを見つけました(here):
MySQL 5.0.46 以降、FEDERATED は一括挿入処理を実行し、複数の行がバッチでリモート テーブルに送信されるようになりました。これにより、パフォーマンスが向上します。また、リモート テーブルがトランザクション対応の場合、エラーが発生した場合に、リモート ストレージ エンジンがステートメントのロールバックを適切に実行できるようになります。この機能には次の制限があります。
これは、(A) prod データベースから test データベースにデータをコピーできることを示しています。(B) 連合テーブルで実行されたアクションは、ソース テーブルでも処理されますが、これは私がやりたいことではありません。実行する必要があるスクリプトがいくつかあり、実際の製品データに対して実行して、製品環境で使用する前に機能することを確認したいと考えています。
私の質問: 私の解釈は正しいですか?
そうであると仮定して、私は試しました:
- select * from database.tablename@ipaddress を実行しましたが、MySQL のマニュアルで実行中のバージョンを確認するようにというエラー メッセージが表示されました。これは、[質問を投稿] をクリックした後に行うことです。
この件で何か助けていただければ幸いです。
編集:さらに調査した結果、OUTFILE と INFILE を使用して必要なことを実行できる可能性があると思います。これにより、prod テーブルで OUTFILE を使用し、テスト テーブルでそれらの行を INFILE します。考え?