- A+
在项目后,我们需要对正式的数据进行固定的备份,用于数据库灾备或者数据分析等。接下来,我们来介绍如何使用shell 备份数据库:
#!/bin/bash #保存备份个数,备份31天数据 expire_day=10 #备份保存路径 backup_dir=/data/mysqlbackup #日期 dd=`date +%Y%m%d%H` #备份工具 tool=mysqldump #用户名 username=数据库用户名 #密码 password="数据库密码" #将要备份的数据库 database_name=数据库 host="数据库地址" #如果文件夹不存在则创建 if [ ! -d $backup_dir ]; then mkdir -p $backup_dir; fi if [ ! -d $sun_backup_dir ]; then mkdir $sun_backup_dir; fi #简单写法 mysqldump -u root -p123456 users > /root/mysqlbackup/users-$filename.sql #$tool -h $host -u $username -p$password $database_name > $backup_dir/$database_name-$dd.sql $tool -h $host -u$username -p$password $database_name | gzip > $backup_dir/$database_name.dump.$dd.sql.gz #判断现在的备份日期 find $backup_dir/ -mtime +$expire_day -type d -exec rm -rf {} \;
之后我们使用定时任务 crontab 定时执行此脚本即可完成数据库的备份