数据库的自动备份与数据库被破坏后的恢复

自动备份脚本
vi mysql-backup.sh 
 
#!/bin/bash
PATH=/usr/local/sbin:/usr/bin:/bin
# The Directory of Backup
BACKDIR=/backup/mysql
# The Password of MySQL
ROOTPASS= ********  ← 将星号替换成MySQL的root密码
# Remake the Directory of Backup
rm -rf $BACKDIR
mkdir -p $BACKDIR
# Get the Name of Database
DBLIST=`ls -p /var/lib/mysql | grep / | tr -d /`
# Backup with Database
for dbname in $DBLIST
do
mysqlhotcopy $dbname -u root -p $ROOTPASS $BACKDIR | logger -t mysqlhotcopy
done
 
chmod 700 mysql-backup.sh 
 
crontab -e
00 03 * * * /root/mysql-backup.sh   ← 添加这一行到文件中,让数据库备份每天凌晨3点进行
 
恢复数据库
 
/bin/cp -Rf /backup/mysql/test/ /var/lib/mysql/  ← 复制备份的数据库test到相应目录

chown -R mysql:mysql /var/lib/mysql/test/  ← 改变数据库test的归属为mysql

chmod 700 /var/lib/mysql/test/  ← 改变数据库目录属性为700

chmod 660 /var/lib/mysql/test/*  ← 改变数据库中数据的属性为660

你可能感兴趣的:(数据库)