1.首先在服务器上创建存放备份sql的文件夹
mkdir /usr/local/mysqlBackup
2.编写脚本mysqlBackupScript.sh
mkdir /usr/local/mysqlScript #创建脚本存放位置
cd /usr/local/mysqlScript #进入脚本存放位置
vim mysqlBackupScript.sh #打开编辑器
编辑器中写入以下内容:
DB_USER="数据库用户名" DB_PASS="数据库密码"
DB_HOST="localhost" DB_NAME="需备份的数据库名"
BIN_DIR="/usr/bin" BCK_DIR="/usr/local/mysqlBackup "
DATE=`date +%F` $BIN_DIR/mysqldump --opt -u$DB_USER -p$DB_PASS -h$DB_HOST $DB_NAME > $BCK_DIR/db_$DATE.sq
如果需要只备份数据库中的几个表,则:
DATE=`date +%F` $BIN_DIR/mysqldump --opt -u$DB_USER -p$DB_PASS -h$DB_HOST $DB_NAME 表1 表2 > $BCK_DIR/db_$DATE.sq
3.赋予脚本可执行权限
chmod -x mysqlBackupScript.sh
4.最后使上面脚本每天执行,从而实现数据库自动备份
crontab -e
插入以下内容(每天早上九点自动备份数据库):
00 09 * * * /bin/sh /usr/local/mysqlScript/mysqlBackupScript.sh
查看自动备份任务是否创建成功
crontab -l
注:若未安装crontab服务,则先安装
yum install -y vixie-cron yum install crontabs /sbin/service crond start chkconfig --level 35 crond on