免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
1234下一页
最近访问板块 发新帖
查看: 61329 | 回复: 34
打印 上一主题 下一主题

[FreeBSD] crontab执行mysql备份,但是没有生成备份文件 [复制链接]

论坛徽章:
3
操作系统版块每日发帖之星
日期:2016-08-03 06:20:00操作系统版块每日发帖之星
日期:2016-08-04 06:20:00操作系统版块每日发帖之星
日期:2016-08-06 06:20:00
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2016-07-28 08:43 |只看该作者 |倒序浏览
本帖最后由 litigerking 于 2016-08-01 08:00 编辑

我配置定时执行任务备份mysql,在命令行执行能正常备份,但是放在crontab后,却没有备份,看日志crontab是正常执行了脚本的,也没有错误提示,

crontab加的
  1. 15      8       *       *       *       root    /home/mysqlbackup/mysqlbackup.sh
复制代码
mysqlbackup.sh内容

  1. #!/bin/sh
  2. db_user="tiger"
  3. db_passwd="tiger"
  4. db_host="localhost"

  5. # directory for backup files.
  6. backup_dir="/home/mysqlbackup"

  7. # delete backup files created expdays ago
  8. expdays=100

  9. # date format for backup files (yyyy-mm-dd)
  10. time="$(date +"%Y-%m-%d")"

  11. # a comma delimited list of databases to backup, backup all databases if blank
  12. dblist="tiger"

  13. # get full path and name for the following programs
  14. MYSQL="$(which mysql)"
  15. if [ -z $MYSQL ]; then
  16. echo "mysql not found ..."
  17. exit 0
  18. fi
  19. MYSQLDUMP="$(which mysqldump)"
  20. if [ -z $MYSQLDUMP ]; then
  21. echo "mysqldump not found ..."
  22. exit 0
  23. fi
  24. MKDIR="$(which mkdir)"
  25. RM="$(which rm)"
  26. GZIP="$(which gzip)"
  27. ###########END-USER-DEFINE###########

  28. # create backup root directory if not found
  29. test ! -d "$backup_dir/" && $MKDIR "$backup_dir/"

  30. # check the directory for store backup is writeable
  31. test ! -w $backup_dir && echo "Error: $backup_dir is un-writeable." && exit 0

  32. # the directory for story the newest backup
  33. test ! -d "$backup_dir/$time/" && $MKDIR "$backup_dir/$time/"

  34. # get all databases
  35. all_db="$($MYSQL -u $db_user -h $db_host -p$db_passwd -Bse 'show databases')"

  36. for db in $all_db
  37. do
  38. goforit=$db
  39. if [ ! -z "$dblist" ]; then
  40. goforit=`echo ",$dblist," |grep ",$db,"`
  41. fi
  42. if [ ! -z "$goforit" ]; then
  43. $MYSQLDUMP -u $db_user -h $db_host -p$db_passwd $db | $GZIP -9 > "$backup_dir/$time/$time.$db.gz"
  44. fi
  45. done

  46. # delete the oldest backup
  47. find $backup_dir -type d -mtime +$expdays -maxdepth 1 | xargs $RM -rf
复制代码
log记录
  1. Jul 28 08:15:00 server2 /usr/sbin/cron[7088]: (root) CMD (/home/mysqlbackup/mysqlbackup.sh)
复制代码

论坛徽章:
3
操作系统版块每日发帖之星
日期:2016-08-03 06:20:00操作系统版块每日发帖之星
日期:2016-08-04 06:20:00操作系统版块每日发帖之星
日期:2016-08-06 06:20:00
2 [报告]
发表于 2016-07-28 08:47 |只看该作者
系统是FreeBSD 10 64位!

论坛徽章:
54
2017金鸡报晓
日期:2017-02-08 10:39:42操作系统版块每日发帖之星
日期:2016-03-08 06:20:00操作系统版块每日发帖之星
日期:2016-03-07 06:20:00操作系统版块每日发帖之星
日期:2016-02-22 06:20:00操作系统版块每日发帖之星
日期:2016-01-29 06:20:00操作系统版块每日发帖之星
日期:2016-01-27 06:20:00操作系统版块每日发帖之星
日期:2016-01-20 06:20:00操作系统版块每日发帖之星
日期:2016-01-06 06:20:0015-16赛季CBA联赛之江苏
日期:2015-12-21 20:00:24操作系统版块每日发帖之星
日期:2015-12-21 06:20:00IT运维版块每日发帖之星
日期:2015-11-17 06:20:002015亚冠之广州恒大
日期:2015-11-12 10:58:02
3 [报告]
发表于 2016-07-29 08:45 |只看该作者
文件开始为什么没有#!/bin/sh呢?

论坛徽章:
3
操作系统版块每日发帖之星
日期:2016-08-03 06:20:00操作系统版块每日发帖之星
日期:2016-08-04 06:20:00操作系统版块每日发帖之星
日期:2016-08-06 06:20:00
4 [报告]
发表于 2016-07-31 18:51 |只看该作者
没复制上,文件里有!
回复 3# lsstarboy


   

论坛徽章:
54
2017金鸡报晓
日期:2017-02-08 10:39:42操作系统版块每日发帖之星
日期:2016-03-08 06:20:00操作系统版块每日发帖之星
日期:2016-03-07 06:20:00操作系统版块每日发帖之星
日期:2016-02-22 06:20:00操作系统版块每日发帖之星
日期:2016-01-29 06:20:00操作系统版块每日发帖之星
日期:2016-01-27 06:20:00操作系统版块每日发帖之星
日期:2016-01-20 06:20:00操作系统版块每日发帖之星
日期:2016-01-06 06:20:0015-16赛季CBA联赛之江苏
日期:2015-12-21 20:00:24操作系统版块每日发帖之星
日期:2015-12-21 06:20:00IT运维版块每日发帖之星
日期:2015-11-17 06:20:002015亚冠之广州恒大
日期:2015-11-12 10:58:02
5 [报告]
发表于 2016-07-31 21:38 |只看该作者
手工执行报错吗?

论坛徽章:
3
操作系统版块每日发帖之星
日期:2016-08-03 06:20:00操作系统版块每日发帖之星
日期:2016-08-04 06:20:00操作系统版块每日发帖之星
日期:2016-08-06 06:20:00
6 [报告]
发表于 2016-08-01 07:55 |只看该作者
手工执行正常!
回复 5# lsstarboy


   

论坛徽章:
3
操作系统版块每日发帖之星
日期:2016-08-03 06:20:00操作系统版块每日发帖之星
日期:2016-08-04 06:20:00操作系统版块每日发帖之星
日期:2016-08-06 06:20:00
7 [报告]
发表于 2016-08-01 07:57 |只看该作者
这个脚本在8.3时用过,当时都很正常,现在就是不行!
回复 5# lsstarboy


   

论坛徽章:
54
2017金鸡报晓
日期:2017-02-08 10:39:42操作系统版块每日发帖之星
日期:2016-03-08 06:20:00操作系统版块每日发帖之星
日期:2016-03-07 06:20:00操作系统版块每日发帖之星
日期:2016-02-22 06:20:00操作系统版块每日发帖之星
日期:2016-01-29 06:20:00操作系统版块每日发帖之星
日期:2016-01-27 06:20:00操作系统版块每日发帖之星
日期:2016-01-20 06:20:00操作系统版块每日发帖之星
日期:2016-01-06 06:20:0015-16赛季CBA联赛之江苏
日期:2015-12-21 20:00:24操作系统版块每日发帖之星
日期:2015-12-21 06:20:00IT运维版块每日发帖之星
日期:2015-11-17 06:20:002015亚冠之广州恒大
日期:2015-11-12 10:58:02
8 [报告]
发表于 2016-08-01 08:41 |只看该作者
建议:
1、把which那几个换成绝对路径试试。
2、多加几个>>重定向,当调试信息写入到一个文件中。

论坛徽章:
3
操作系统版块每日发帖之星
日期:2016-08-03 06:20:00操作系统版块每日发帖之星
日期:2016-08-04 06:20:00操作系统版块每日发帖之星
日期:2016-08-06 06:20:00
9 [报告]
发表于 2016-08-01 10:18 |只看该作者
不管用,全部写成绝对路径,帐号密码全部写到命令行里,最后生成一个0字节的空文件,但是在命令行中执行都正常,就是放在crontab不行!回复 8# lsstarboy


   

论坛徽章:
1
操作系统版块每日发帖之星
日期:2016-08-07 06:20:00
10 [报告]
发表于 2016-08-01 14:04 |只看该作者
回复 1# litigerking

不要加入用户试试。
‘15      8       *       *       *    /home/mysqlbackup/mysqlbackup.sh’


   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP