MySQLのトランスポータブル表領域:表のコピーを1つのインスタンスから別のインスタンスへ

MySQLのバージョン:5.7.23

 

ソース・インスタンス1.(存在しない場合)テーブルを作成します。

MySQLの>のUSE ABCE。
MySQLの>テーブルT(C INT)ENGINE = InnoDBテーブルを作成します。
MySQLの> t値(1)に挿入します。

 

テーブルが存在しない場合は、ターゲット・インスタンス2.は、テーブルを作成します。

MySQLの>のUSE ABCE。
MySQLの>テーブルT(C INT)ENGINE = InnoDBテーブルを作成します。

 

 

ターゲット・インスタンスで3は、既存の表スペースを捨てます:

MySQLの>表トン廃棄TABLESPACEを改変すること。

この手順を実行した後、ターゲットインスタンスtのIBDファイルテーブルのみt.frmファイルを残して、削除されます

 

ソース・インスタンス4.は、EXPORTゲージストール... FOR FLUSH TABLESを実行して、メタデータファイルは.CFG作成します。

MySQLの>のUSE ABCE。
MySQLの> EXPORT FOR FLUSH TABLESのトン。

EXPORT文のFOR FLUSH TABLES ...あなたはインスタンスが実行されているバイナリテーブルをコピーすることができるように、テーブルへの変更がディスクにフラッシュされたことを確認します。輸出のためのFLUSH TABLES ...を実行している場合、InnoDBは同じデータベースディレクトリ内のテーブルとの.cfgファイルを生成します。ときにスキーマ検証.cfgファイルは、ファイルのメタデータのインポートテーブルスペースが含まれています。

 

5.宛先インスタンスにソース・インスタンスから.cfgファイルとメタデータファイルをの.ibd。例えば:

シェル> SCPの/path/to/datadir/abce/t.{ibd,cfg}宛先サーバ:/パス/に/ DATADIR / ABCE

あなたは、ファイルをコピーし、.cfgファイルをの.ibd、その後、次のステップとして、共有ロックを解放する必要があります。


6.ソース・インスタンスでは、輸出のためのリリースUNLOCKテーブルテーブルの使用は... FLUSHによって取得ロック:

MySQLの>のUSE ABCE。
MySQLの> UNLOCK TABLESを。

  

ターゲット・インスタンス7.、インポートテーブルスペース:

MySQLの>のUSE ABCE。
mysqlの>テーブルTのIMPORTのTABLESPACEを改変すること。

  

テスト8.目標:

ルート@ localhostを:ABCE 3時45分49秒>を選択*トンから。
+ ------ +
| C1 |
+ ------ +
| 1 |
+ ------ +
セット内の1行(0.01秒)

おすすめ

転載: www.cnblogs.com/abclife/p/11787591.html