因为需要对Mysql数据库进行定时备份,首先按常规套路在CentOS下使用yum进行安装
yum install crontabs
遗憾的是,提示Mysql版本冲突。。。
Transaction Check Error:
file /usr/share/mysql/charsets/Index.xml from install of mysql-libs-5.1.73-8.el6_8.x86_64 conflicts with file from package mysql-community-common-5.7.13-1.el6.x86_64
file /usr/share/mysql/charsets/armscii8.xml from install of mysql-libs-5.1.73-8.el6_8.x86_64 conflicts with file from package mysql-community-common-5.7.13-1.el6.x86_64
file /usr/share/mysql/charsets/ascii.xml from install of mysql-libs-5.1.73-8.el6_8.x86_64 conflicts with file from package mysql-community-common-5.7.13-1.el6.x86_64
在网上搜了下,发现crontab服务依赖于mysql-libs5.1.x,与已安装的5.7版本冲突。在生产环境下,不可能把Mysql降级来满足版本,因此只能搜寻其它解决办法。
偶然间在(https://blog.youkuaiyun.com/testcs_dn/article/details/48781553)发现《使用rpm命令从CentOS系统盘安装计划任务程序crontab》,虽然手上没有系统盘,但是网上应该有相关的RPM包。
搜寻了下,在http://www.rpmfind.net/linux/rpm2html/search.php上找到了相关的rpm包。
#下载相关包
wget http://www.rpmfind.net/linux/centos/6.9/os/x86_64/Packages/cronie-1.4.4-16.el6_8.2.x86_64.rpm
wget http://www.rpmfind.net/linux/centos/6.9/os/x86_64/Packages/crontabs-1.10-33.el6.noarch.rpm
wget http://www.rpmfind.net/linux/centos/6.9/os/x86_64/Packages/cronie-anacron-1.4.4-16.el6_8.2.x86_64.rpm
#按顺序进行安装
rpm -ivh cronie-1.4.4-16.el6_8.2.x86_64.rpm --nodeps
#没有nodeps参数时,会提示dailyjobs is needed by cronie-1.4.4-16.el6_8.2.x86_64
rpm -ivh crontabs-1.10-33.el6.noarch.rpm
rpm -ivh cronie-anacron-1.4.4-16.el6_8.2.x86_64.rpm
安装完成后,启动crontabs服务
service crond start
现在,可以开始编辑你的定时任务了。
另外,也在考虑是否可以通过yum排除mysql依赖包进行安装,但是尝试了下没成功。
yum -y install vixie-cron --exclude=mysql*
--> Finished Dependency Resolution
Error: Package: 2:postfix-2.6.6-8.el6.x86_64 (base)
Requires: libmysqlclient.so.16()(64bit)
Error: Package: 2:postfix-2.6.6-8.el6.x86_64 (base)
Requires: libmysqlclient.so.16(libmysqlclient_16)(64bit)
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest