Windowsの個別のダンプでMySQLの各テーブルをバックアップする


0

「abcd」という名前のMySQLデータベースがあり、Windowsで.batファイルを使用して各テーブルのダンプを実行する必要があります。

以下を組み合わせるにはどうすればよいですか

mysql -e "show tables from abcd" -u root --password=1234
mysqldump -u root --password=1234 %%tablename > S:\Backup\MySQL\%%tablename.sql

テーブルをループするために単一のバットファイルに?

ありがとう。


私の質問には何の問題がありますか?
シグ

回答:


1

このようなものはどうですか?

mysql -e "abcdのテーブルを表示" -u root --password = 1234> tables.txt

FOR / F %% A IN(tables.txt)DO(mysqldump -u root --password = 1234 --routines --databases %% A> S:\ Backup \ MySQL \ %% A.sql)

私はもうウィンドウを使用しません。これはLinuxでのほうがずっと簡単でしょう。/ Fはファイルを1行ずつ読み取ります。そのため、いくつかの変更を行ってから戻ってくる必要があります。


返信いただきありがとうございます。手動でテーブルを一覧表示するのではなく、「abcdのテーブルを表示」の結果を使用します。
Sig

それを見てください。答えを編集しました。
ジョー

更新していただきありがとうございます。私たちは、ほぼ、そこにいる。テーブルファイルは正しく作成されていますが、ループに問題があります。 mysqldump -u root --password=1234 users 1> users.sql1beforeに注目してください>。おかげで
シグ

その「1」は.txtファイルからのものですか?ECHO %% Aをいくつか試してください
ジョー

ありがとう。いいえ1はtxtにありません。TXTは正常に見えると私はそれをエコーするときも、私は1せずに、テーブル名を取得
Sigの
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.