0

Web サーバーで 15 個の MySQL データベースのバックアップを作成しようとしています。このデータベースのリストは、私の (できれば!) 顧客ベースの増加に伴い、今後も増えていくでしょう。

明らかに、次のコマンドで mysql ダンプを実行できます。

mysqldump --add-drop-table -h host -u username -p"password" databasename > filename.sql

私の質問は、MySQL データベースをバッチ エクスポート (および同様にバッチ インポート) する方法はありますか? 各データベースを個別にバックアップする必要がありますか?

実際、これをスクリプト化して、.bat ファイルを実行するだけで毎日実行できるようにしたいと考えています。これをオンラインで見つけました (この Web サイトから - http://www.dougboude.com/blog/1/2009/09/7A.Batch-Script-to-Backup-MySQL-Database.cfm ):

@echo off
for /f "tokens=1" %%i in ('date /t') do set DATE_DOW=%%i
for /f "tokens=2" %%i in ('date /t') do set DATE_DAY=%%i
for /f %%i in ('echo %date_day:/=-%') do set DATE_DAY=%%i
for /f %%i in ('time /t') do set DATE_TIME=%%i
for /f %%i in ('echo %date_time::=-%') do set DATE_TIME=%%i
rem Killing all files older than a week old...
forfiles /D -8 /M *.zip /C "cmd /c del @fname.zip"
"C:\mysql\bin\mysqldump" -u username -p"password" dbname >C:\mysqlbackup\%DATE_DAY%_%DATE_TIME%_database.sql
wzzip C:\mysqlbackup\%DATE_DAY%_%DATE_TIME%_database.zip C:\mysqlbackup\%DATE_DAY%_%DATE_TIME%_database.sql -mex

データベースごとにこのスクリプトをコピーして貼り付ける必要がありますか?

私はSSHとシェルコマンドに本当に慣れていないので、どんな助けも大歓迎です! ありがとう。

4

1 に答える 1

1

答えは、mysqldump コマンドに -all-databases を追加することでした。mysqldump -u username -ppassword –all-databases > dump.sql

Google 検索用語を「大量エクスポート mysql データベース」に絞り込んで、このサイトを見つけました: http://www.mydigitallife.info/how-to-backup-and-restore-export-and-import-mysql-databases-tutorial/

于 2013-05-11T20:51:47.213 に答える