mysql主机服务器未连接

时间:2016-09-13 08:46:08

标签: java mysql unix sh

我正在写一个.sh文件,我试图访问一个.sql文件,其中我有需要按计划运行的查询。

以下是我尝试连接数据库的行:

/home/mysql/mysql/bin/mysql --port=$PORT --host=$HOST --user=$DB_USER --password=$DB_PASSWORD --database=$DB_NAME < ${SQL_SCRIPT_PATH}${SQL_SCRIPT_NAME} >> ${LOG_FILE_PATH}${LOG_FILE_NAME}

但是,问题是当执行调度程序时,它会给出以下错误:

[example@mchpXXX TEST_sh]$ sh updateMonthlyUserData.sh
updateMonthlyUserData.sh: line 15: mysql: command not found

注意: 如果我从putty手动运行sh文件而不是通过调度程序 crontab

,我试图运行它并获得成功

请检查并帮助。

1 个答案:

答案 0 :(得分:0)

Crontab使用具有最小环境变量集的默认shell(sh)。很可能没有正确设置PATH变量。

我会在脚本的开头设置所有环境变量

#!/bin/bash
PATH=$PATH:/home/mysql/mysql/bin/:moreFolders

进一步阅读: How to get CRON to call in the correct PATHs https://askubuntu.com/questions/23009/reasons-why-crontab-does-not-work