將MySql中的資料庫一個一個備份

將MySql中的資料庫一個一個備份,避免使用參數(–all-databases),而使得備份出的(單一)檔案過大。

#!/bin/bash

DBS="$(mysql -u root --password="1234567" -Bse 'show databases')"

for db in $DBS
do
if [ $db != "information_schema" ] && [ $db != "performance_schema" ] && [ $db != "mysql" ] && [ $db != "phpmyadmin" ] && [ $db != "test" ];then
#echo $db
mysqldump -u root --password="1234567" $db > /mysql/$db.sql
fi
done

測試:

使用 root 的身份執行,先建立一個 /mysql 資料夾,裡面為空。

執行以上腳本後,發現 /mysql 資料夾裡各個資料庫己經個別存檔了。

排除(information_schema、performance_schema、mysql、phpmyadmin、test)資料庫