MySQL使用crontab定时备份不执行问题
在使用crontab定时备份数据库时,发现并没有执行备份命令.
下面是定时备份的代码:
30 1 * * * /usr/local/mysql/bin/mysqldump --defaults-extra-file=/usr/local/mysql/etc/my.cnf yxv9 | gzip > /root/sqldb/yw/ywv9_`date '+%m-%d-%Y'`.sql.gz
但是直接如下面一样执行命令时,,却可以备份.
/usr/local/mysql/bin/mysqldump --defaults-extra-file=/usr/local/mysql/etc/my.cnf yxv9 | gzip > /root/sqldb/yw/ywv9_`date '+%m-%d-%Y'`.sql.gz
这到底怎么回事呢?
通过查看crontab的执行日志竟然发现任务出错了!
/bin/sh: -c: line 0: unexpected EOF while looking for matching ``'
/bin/sh: -c: line 1: syntax error: unexpected end of file
从上面的出错信息可以看到,一个cmd被从中间截断了,脚本在 /bin/date +"之后就被截断了,出现了语法错误。
原来是让%闹得.
The "sixth" field (the rest of the line) specifies the command to be run. The entire command portion of the line, up to a new‐line or a "%" character, will be executed by /bin/sh or by the shell specified in the SHELL variable of the cronfile. A "%" character in the command, unless escaped with a backslash (), will be changed into newline characters, and all data after thefirst % will be sent to the command as standard input.
原来是 % 这个符号在crontab里面被翻译成了命令结束,所以当crontab读到%就吧后面的内容截取掉了,导致脚本执行失败。
那么怎么解决呢?
在%前面加上转移符号""即可,如下:
30 1 * * * /usr/local/mysql/bin/mysqldump --defaults-extra-file=/usr/local/mysql/etc/my.cnf yxv9 | gzip > /root/sqldb/yw/ywv9_`date '+\%m-\%d-\%Y'`.sql.gz
MySQL使用crontab定时备份不执行问题的更多相关文章
- mysql使用crontab定时备份
1, 安装crontab yum install vixie-cron yum install crontabs 说明:vixie-cron软件包是cron的主程序:crontabs软件包是用来安装. ...
- linux下使用crontab定时备份MYSQL数据库的方法:
摘要 linux下使用crontab定时备份MYSQL数据库的方法: 只需按照下面3步做,一切都在你的掌控之下: 第一步:在服务器上配置备份目录代码: ------------------------ ...
- MySQL定时备份之使用Linux下的crontab定时备份实例
这篇文章主要介绍了使用Linux下的crontab进行MySQL定时备份的例子,需要的朋友可以参考下 复制代码代码如下: ##################################### ...
- Linux下MySQL备份以及crontab定时备份
1. 备份某个数据库 ################################################################## # 备份某个数据库 ############ ...
- linux下应用crontab对mysql数据库进行定时备份
linux下应用crontab对mysql数据库进行定时备份 @(编程) mysql数据库提供了备份命令mysqldump,可以结合crontab命令进行定时备份. 我写了一个mysqlbackup. ...
- MySQL数据库的定时备份
1. 创建shell脚本 vim backupdb.sh 创建脚本内容如下: #!/bin/sh db_user="root" db_passwd=" db_name=& ...
- Linux实现MYSQl数据库的定时备份
今天给大家分享一下如何在Linux下实现MYSQl数据库的定时备份. 前提需要保证你的Linux服务器已经安装了MYSQl数据库服务. 1.创建shell脚本 vim backupdb.sh 创建脚本 ...
- Linux下使用crontab定时备份日志
上周学习了Linux,其中有使用crontab定时备份日志的内容,现把主要步骤记录如下: 首先需要备份的日志的源目录位于/opt/lampp/logs/access_log 备份到/tmp/logs下 ...
- Python +crontab定时备份目录发送邮件
公司有一台静态页面展示服务器仅供给客户展示我们做的项目,当时买的时候是最低配,也就是磁盘空间为20G的系统盘,考虑到代码量很小所以没有另加磁盘,后来项目多了,就写了个crontab 定时备份目录. 就 ...
随机推荐
- 如何将两个/多个PDF文件合并成一个?
原文链接:https://docsmall.com/blog/how-to-merge-pdf 工作中我们总会遇到将PDF合并的问题,比如: 多次扫描的PDF文件,需要合并到一个 PDF文件需要追加一 ...
- 如何在GibHub上传自己的项目
如何上传项目至GinHub 准备好项目.在项目ssm-crud的目录下右击,点击Git Bash Here,打开git命令行. 在命令行中,输入git init,使项目文件夹加入git管理: 输入gi ...
- Web前端基础(2):HTML(二)
1. body中的相关标签 1.1 标题标签:hn HTML提供<hn>系列标签,用于修饰标签,包含:<h1>.<h2>.<h3>.<h4> ...
- C#操作SQLite数据库增、删、改、查 欢迎转载
C#操作SQLite数据库增.删.改.查 欢迎转载 转载记得留下链接地址哦!!! 最近项目上要使用SQLite数据库,不怕大伙笑话毕业四年多了,一直使用Oracle或者MySQL或者SQLServer ...
- centos下搭建python双版本环境
目录 centos下搭建python双版本环境 一.安装python3 1.理清自带python位置 2.更新用于下载编译python3的相关包 3.安装pip 4.用pip安装wget 5.用wge ...
- js绑定事件代理的坑
js通过事件代理的方式绑定跳转事件,我这里的逻辑是把click事件绑定在最外层container上面,如果e.target包含我已经写好的class,则执行跳转逻辑.但是这种方式好像只能是在点击的元素 ...
- 常用RGB颜色表 色值
转自:http://blog.sina.com.cn/s/blog_7f422a8901019d8j.html R G B 值 R G B 值 R G B 值 黑色 0 0 0 #0000 ...
- 「SAP技术」 SAP MM MPN物料的采购初探
「SAP技术」 SAP MM MPN物料的采购初探 1, MPN物料号与我方正常使用料号物料主数据之间的LINK关系维护 MPN料号 14000005 , 我方料号11000250 , 2,采购信息记 ...
- python中Socket的使用
说明 前一段时间学习python网络编程,完成简单的通过python实现网络通信的功能.现在,将python中Socket 通信的基本实现过程做一个记录备份. Socket通信 python 中的so ...
- oracle数据库不小心删除了数据
1.select * from SYS_DICT as of timestamp to_timestamp('2019-11-05 10:00:00','yyyy-mm-dd hh24:mi:ss') ...