由于在vps上面部署了mysql的备份脚本,今天打开备份目录发现文件大小都为0,意味着备份没成功,但是手动执行脚本的时候,备份又正常,网上查了下找到了原因,主要是因为计划任务下执行命令,识别不到系统环境变量,所以需要将mysqldump这个命令用全路径的方式补全才能正确运行此命令。
所以解决方法就很简单了。
原来的python脚本cmd变量如下:
cmd = "mysql -h %s -p%s -P 3306 " \
"%s>%s" % (DB_HOST, DB_PASSWD, db_name, fname)
现在改成:
mysqldump='/usr/local/mysql/bin/mysqldump' ##代码前面添加变量指出命令所在的绝对路径
cmd = "%s -h %s -p%s -P 3306 " \
"%s>%s" % (mysqldump, DB_HOST, DB_PASSWD, db_name, fname) ##通过变量传入命令
本文由 Mr Gu 创作,采用 知识共享署名4.0 国际许可协议进行许可
本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名
最后编辑时间为: Mar 6, 2018 at 02:45 pm