linux mysql备份数据库
#!/bin/sh
# author shiwei.du
# date 2013-10-30
NOW_TIME=`date "+%y%m%d%H%M%S"` # 现在时间戳
OVER_TIME=`date -d'3 day ago' "+%y%m%d%H%M%S"` #过期的时间戳
DBHOST=192.168.1.21 #服务器ip地址
DBNAME=test #数据库名称
DBUSER=root #操作者
DBPASSWD=****** #密码
DBCHARACTER=utf8mb4 #数据库编码
BACKUPPATH="/home/mysqlbackup/" #备份路径
BACKUPLOG=$BACKUPPATH"mysqlbackup.log" #备份日志文件
# 判断存放备份文件的目录是否存在,不存在创建并修改文件的权限
if [ ! -d "$BACKUPPATH" ]; then
mkdir -p -m 700 "$BACKUPPATH"
fi
# 判断日志文件是否存在
if [ ! -f "$BACKUPLOG" ]; then
touch "$BACKUPLOG"
fi
# 执行mysqldump命令导出将要备份的数据库
`mysqldump -h$DBHOST -u$DBUSER -p$DBPASSWD --default-character-set=$DBCHARACTER --opt $DBNAME | gzip > $BACKUPPATH$DBNAME$NOW_TIME.sql.gz`
#记录日志文件
echo "[CREATE NEW BACKUP FLLE $BACKUPPATH$DBNAME$NOW_TIME.sql.gz SUCCESS!]"[`date "+%y-%m-%d %H-%M"`] >> $BACKUPLOG
#删除过期的备份文件
rm -f $BACKUPPATH$DBNAME$OVER_TIME.sql.gz | echo "[REMOVE FILE $BACKUPPATH$DBNAME$OVER_TIME.sql.gz SUCCESS!]" >> $BACKUPLOG
热门日志
分类
- Django(4)
- ssdb(1)
- Mac(7)
- C(1)
- memcache(1)
- Python(32)
- Vim(8)
- sed(2)
- ansible(3)
- awk(4)
- shell(3)
- about(1)
- git(9)
- bat(4)
- svn(0)
- docker(1)
- Tornado(1)
- go(2)
- 架构(18)
- Vue(1)
- game(2)
- Html(6)
- Java(8)
- Mysql(37)
- Ajax(2)
- Jsp(1)
- Struts(8)
- Linux(73)
- JavaScript(39)
- Staruml(0)
- Mouth(1)
- Php(102)
- Windows(8)
- Message(48)
- Lua(10)
- Compute(1)
- Redis(7)
- Nginx(12)
- Jquery(1)
- Apache(1)
- cocos2d-x(8)
最新日志
- DHCP(Dynamic Host Configuration Protocol) 动态主机配置协议
- 从技术专家到战略领袖:成就技术总监的路径与思维
- python 如何读取超大的文件
- python requests 模块
- 如何给自己充电?
- 告别2024,迎接2025:深耕梦想,向前而行
- linux 的 dns 缓存,NSCD 服务
- The following untracked working tree files would be overwritten by checkout
- insecure connection not allowed,产生原因及如何解决
- 逆境乐观,顺境警醒:生活的智慧与力量