这篇文章主要讲解了“crontab不执行mysql脚本问题的解决方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“crontab不执行mysql脚本问题的解决方法”吧!
cat /root/myadmin/test.sh
#!/bin/sh
PATH=/usr/local/service/mysql-3306/bin:$PATH
export PATH
echo "test test createuid"
ginftool="/usr/local/service/mysql-3306/bin/mysql --socket=/usr/local/service/mysql-3306/mysql.sock --database=ginf_db"
$ginftool -e "select now();"
echo "end"
放在crontab里发现不能里面的sql语句,但是在命令行下直接执行是没问题的!
是怎么回事呢?
到/var/mail下查看 tail -n 20 root,发现:
test test createuid
/usr/local/service/mysql-3306/bin/mysql: error while loading shared libraries: libmysqlclient.so.15: cannot open shared object file: No such file or directory
end
在crontab里不能发现libmysqlclient.so.15,但是发现这个是在/usr/lib/mysql下,不是默认的/usr/lib下,有2种方法来解决:
1、ln -s /usr/lib/mysql/libmysqlclient.so.15.0.0 /usr/lib/libmysqlclient.so.15
2、将export
LD_LIBRARY_PATH=/usr/lib/mysql
加入到脚本里!
感谢各位的阅读,以上就是“crontab不执行mysql脚本问题的解决方法”的内容了,经过本文的学习后,相信大家对crontab不执行mysql脚本问题的解决方法这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!