ホームページ >データベース >mysql チュートリアル >「mysqldump」を使用してすべての MySQL テーブルを CSV 形式に効率的にダンプするにはどうすればよいですか?
Mysqldump を使用してすべての MySQL テーブルを CSV 形式にダンプ
すべてのデータベース テーブルを CSV 形式に抽出するタスクに直面した場合、mysqldump は便利なソリューション。ただし、デフォルトの機能では、一度に個別のテーブルのみをダンプできます。
すべてのテーブルをダンプするには、包括的なアプローチが必要です。方法は次のとおりです:
個々のテーブル データを CSV 形式に変換します:
mysql -B -u username -p password database -h dbhost -e "SELECT * FROM tablename;" \ | sed "s/\"/\"\"/g;s/'/\'/;s/\t/\",\"/g;s/^/\"/;s/$/\"/;s/\n//g"
このコマンドは、という名前の特定のテーブルからデータを抽出します。 'tablename' は MySQL を使用し、次のようにフォーマットします。 CSV.
すべてのテーブルのリストを生成:
mysql -u username -ppassword dbname -sN -e "SHOW TABLES;"
このコマンドは、データベース内のすべてのテーブルのリストを取得して保存します。変数内。
反復処理テーブルと CSV データのエクスポート:
ループを使用して、テーブルのリストを反復処理し、前述の「テーブル データを CSV 形式に変換」コマンドを追加します。
for tb in $(mysql -u username -ppassword dbname -sN -e "SHOW TABLES;"); do echo .....; done
置換「テーブル データを CSV 形式に変換」コマンドで「....」を使用し、「テーブル名」を必ず次のように置き換えます。 '$tb'.
出力を CSV ファイルにリダイレクトします:
Append ' > outfile.csv' をループ コマンドの最後に追加して、出力を CSV ファイルに送信します。
この包括的なソリューションを実行すると、すべての MySQL テーブルを CSV 形式で効率的にダンプできます。データ分析と処理のニーズに合わせた便利なエクスポート オプションです。
以上が「mysqldump」を使用してすべての MySQL テーブルを CSV 形式に効率的にダンプするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。