mysqldump 脚本备份数据库
阅读 (152) 2020-08-14 13:00:00
备份简单可用管道压缩备份后的文件,恢复简单,可以使用管道将他们输入到mysql
自已找个目录创建脚本:
cd /
vi db_backup.sh
填入以下内容
OUT_DIR=/home/wwwroot/project/storage/backup #备份文件存放路径
DAYS=7 #DAYS=7代表删除7天前的备份,即只保留最近7天的备份
cd $OUT_DIR #进入备份存放目录
mysqldump dbname | gzip > /home/wwwroot/project/backup/mysqldata_bak`date +%Y-%m-%d`.sql.gz #备份
find $OUT_DIR -name "mysqldata_bak*" -type f -mtime +$DAYS -exec rm {} \; #删除7天前的备份文件
这里mysqldump没有用 -u -p,因为用了也会提示在命令中使用-p不安全之类的
在 /etc/my.cnf 的 [mysqldump] 下面添加上自己的数据库连接信息
[mysqldump]
host=127.0.0.1
user=root
password=xxxxxxxx
重启数据库服务后,脚本中的mysqldump就可以不加-u -p了
可以单独执行命令,再到目录中查看是否备份成功了:
mysqldump dbname | gzip > /home/wwwroot/project/backup/mysqldata_bak`date +%Y-%m-%d`.sql.gz
再到crontab中加入定时任务:
crontab -e
每天0点执行一次
0 0 * * * root /backup_database.sh
在导入时需到一些其它问题就另行百度,一般文件太大等问题,需要修改一些配置就行了
更新于:2020-08-14 13:00:00