1.バックアップスクリプト作成
[root@miracle ~]# vi mysql-backup.sh #!/bin/bash PATH=/usr/local/sbin:/usr/bin:/bin # バックアップ先ディレクトリ BACKDIR=/backup/mysql # MySQLrootパスワード ROOTPASS=xxxxxxxx # バックアップ先ディレクトリ再作成 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 root -p$ROOTPASS -B -e "show tables" $dbname|wc -l` [ $table_count -ne 0 ] && mysqldump --events -u root -p$ROOTPASS $dbname > $BACKDIR/$dbname.sql | logger -t mysqldump done
2.アクセス権をrootのみに変更
[root@miracle ~]# chmod 700 mysql-backup.sh
3.バックアップ実行
[root@miracle ~]# ./mysql-backup.sh
4.バックアップ実行確認
[root@miracle ~]# ll /backup/mysql/ 合計 468 -rw-r--r--. 1 root root 477584 9月 15 00:27 mysql.sql
5.バックアップ定期自動実行設定
[root@miracle ~]# echo "0 5 * * * root /root/mysql-backup.sh" > /etc/cron.d/backup
コメント