2011-10-28 12 views
4

私はいくつかのデータを持つMySQLデータベースを持っています。MySQLデータの移行

このデータは、ほぼ同じテーブルを持つデータベース間で移行する必要がありますが、テーブル名とフィールド名は異なります。

データは両方のデータベースで同じですが、テーブル名(および一部のフィールド名/タイプ)のみが変更されます。しかし、それらはまったく同じ構造ではありません。私はテーブルからいくつかのフィールドを削除し、フィールドを別のテーブルに移動しました。

スクリプトをすべてのレコードに対して繰り返し実行し、新しいデータベースに挿入することなく、これを達成するにはどうすればよいですか?どんなツール?

+4

あなたはちょうどINSERT .. SELECT FROM? 'oldtable(oldcola、oldcolb、oldcolc)からnewtable(newcol1、newcol2、newcol3)を選択します.'列を追加または削除したり、列テーブルを変更するためにテーブルを変更したりすることができます... – Konerak

+0

Konerakありがとう、これがトリックでした –

答えて

4

mysql_dumpを使用して、データベースとその内容を再作成するのに必要なすべてのクエリを含む.sqlファイルを作成します。この.sqlファイルを編集して、テーブル/フィールド名を変更して新しいDBの設定を反映させることができます。

+0

それらはまったく同じ構造ではありません。私はテーブルからいくつかのフィールドを削除し、フィールドを別のテーブルに移動しました。 –

+1

あなたの質問でそれを述べておくべきでしょうか?テーブルとフィールドの名前を変更し、並べ替えられた構造は変更しないと言っただけです。 –