50

1 つのデータベースと約 150 のテーブルを含む大きな SQL ファイルがあります。そのデータベースをインポートするために使用mysqlimportしたいのですが、インポート プロセスでいくつかのテーブルを無視またはスキップしたいと考えています。すべてのテーブルをインポートし、一部を無視する適切な構文は何ですか? ありがとうございました。

4

8 に答える 8

12

mysqlimportSQL ステートメントをインポートするための適切なツールではありません。このツールは、CSV などの書式設定されたテキスト ファイルをインポートするためのものです。やりたいことはmysql、次のようなコマンドを使用して、SQL ダンプをクライアントに直接フィードすることです。

bash > mysql -D your_database < your_sql_dump.sql

必要な機能mysqlも提供しません。mysqlimport最善の方法は、ダンプ全体をインポートしてから、不要なテーブルを削除することです。

ダンプの取得元のサーバーにアクセスできる場合は、 を使用して新しいダンプを作成できますmysqldump --ignore-table=database.table_you_dont_want1 --ignore-table=database.table_you_dont_want2 ...


一部のテーブルのインポートをスキップする回避策については、この回答を確認してください

于 2013-05-24T12:53:16.790 に答える
1

必要に応じて、一度に 1 つのテーブルを実行できます。

mysqldump -p sourceDatabase tableName > tableName.sql
mysql -p -D targetDatabase < tableName.sql
于 2013-07-26T02:13:45.380 に答える