31900


**\--all-databasesのように1ファイル保存ではなく、データベース単位で保存したいのですが**  
・個別指定するのは大変なので、まとめて指定する方法はあるでしょうか？


CC BY-SA 3.0
2017-01-16T07:12:18.623
31883
2017-01-17T03:42:32.867
2017-01-17T03:42:32.867
7886
7886
question
mysql
mysqldumpで一括保存する際、データベース単位でファイル保存する方法はあるでしょうか？


このWebページが参考になるのではないでしょうか。  
<http://easyramble.com/backup-mysql-and-restore.html>

[code]

    #!/bin/bash
    
    # バックアップ先ディレクトリ
    BACKDIR=/var/backup/mysql
    
    # バックアップ用の MySQL ユーザーとパスワード
    DBUSER=mysql_backup
    DBPASS=password
    
    # バックアップ先ディレクトリ再作成
    rm  -rf $BACKDIR
    mkdir -p $BACKDIR
    
    # データベース名取得
    DBLIST=`ls -p /var/lib/mysql | grep / | tr -d /`
    
    # データベースごとにバックアップ、バックアップファイルは日時を付ける
    for dbname in $DBLIST
    do
      [ $dbname = "performance_schema" ] && continue
      table_count=`mysql -u $DBUSER -p$DBPASS -B -e "show tables" $dbname | wc -l`
       [ $table_count -ne 0 ] && mysqldump -u $DBUSER --password=$DBPASS $dbname > $BACKDIR'/'$dbname'_'`date +%Y-%m-%d_%H:%M:%S`'.sql'
    done
    
[/code]


CC BY-SA 3.0
2017-01-17T02:12:26.663
31900
2017-01-17T02:12:26.663
14540
31883
answer