免费注册 查看新帖 |

Chinaunix

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

crontab备份mysql出现的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-06-01 15:39 |只看该作者 |倒序浏览
本帖最后由 狼毫吴钩 于 2011-06-02 18:59 编辑

我准备用crontab备份我的mysql,写了一个sh,直接运行时能正常备份,但是加到cron里,也能执行,备份出来的文件却是0字节,为什么呢?
我是用root用户登陆的服务器,cron里是这样写的:0 3 * * * /bin/sh /home/back_mysql.sh
补充一下:我的服务器系统是centos5.5
下面是我的sh

#!/bin/bash
#This is a ShellScript For Auto DB Backup
#Setting
DBName=mysqlqqq
DBUser=root
DBPasswd=mima
BackupPath=/home/backup
LogFile=/home/backup/log/bk_bugtracker.log

NewFile="$BackupPath/$DBName"_db_$(date +%Y_%m_%d).tgz
DumpFile="$BackupPath/$DBName"_db_$(date +%Y_%m_%d).sql
OldFile="$BackupPath/$DBName"_db_$(date +%Y_%m_%d --date='3 days ago').tgz

echo "-------------------------------------------">> $LogFile
echo $(date +"%Y-%m-%d %H:%M:%S")>> $LogFile
echo "--------------------------">> $LogFile

#Delete Old File
if [ -f $OldFile ]
then
        rm -f $OldFile>> $LogFile 2>&1
        echo "[$OldFile] Delete Old File Success!">> $LogFile
else
        echo "[$OldFile] No Old Backup File!">> $LogFile
fi

#Create new backupfile
if [ -f $NewFile ]
then
echo "[$NewFile] The Backup File is exists,Can't Backup!">> $LogFile
else
mysqldump -u $DBUser -p$DBPasswd $DBName> $DumpFile
tar czvf $NewFile $DumpFile>> $LogFile 2>&1
echo "[$NewFile] Backup Success!">> $LogFile
rm -rf $DumpFile
fi
echo "-------------------------------------------">> $LogFile
echo>> $LogFile
echo>> $LogFile

论坛徽章:
0
2 [报告]
发表于 2011-06-01 16:29 |只看该作者
回复 1# 狼毫吴钩


    这样写,失败是必然的

论坛徽章:
0
3 [报告]
发表于 2011-06-01 16:35 |只看该作者
我用root用户,contab -e,也写了,也是失败的吗?
请楼上的兄弟指出哪里的问题,多谢了

论坛徽章:
0
4 [报告]
发表于 2011-06-01 18:10 |只看该作者
二楼的兄弟,人呢,说了 一句就没影了

论坛徽章:
0
5 [报告]
发表于 2011-06-02 08:18 |只看该作者
把二楼的兄弟顶出来

论坛徽章:
0
6 [报告]
发表于 2011-06-02 10:54 |只看该作者
二楼的人呢

论坛徽章:
0
7 [报告]
发表于 2011-06-02 12:38 |只看该作者
回复 1# 狼毫吴钩


    0 3 * * * /bin/sh /home/ back_mysql.sh 中间多了个空格吧

论坛徽章:
0
8 [报告]
发表于 2011-06-02 13:58 |只看该作者
本帖最后由 狼毫吴钩 于 2011-06-02 14:40 编辑

回复 7# 飞鸿无痕


哪中间?/bin/sh /home  还是/home/ back_mysql.sh     home/back_mysql.sh这个是发帖的问题,在命令中是无空格的

论坛徽章:
0
9 [报告]
发表于 2011-06-02 15:40 |只看该作者
回复 8# 狼毫吴钩


    0 3 * * * /bin/sh /home/back_mysql.sh
这样不行吗??

论坛徽章:
0
10 [报告]
发表于 2011-06-02 16:02 |只看该作者
回复 9# 飞鸿无痕


    这就是这么写的,结果是执行sh这个文件,但生成的备份文件字节为0,也就是说,它好象没有把数据库备份出来,我是用root登陆的啊。
在网上查了一下,sh文件的顶部也写了#!/bin/bash等
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP