jenkins远程执行脚本mysql command not found
今天用jenkins远程部署测试环境,老是发现之前的测试数据没有删除掉。手动部署一遍发现又是正常的。然后开始看远程部署的日志,在执行shell脚本的时候有一个mysql command not found的提示于是我用xshell远程上去mysql -uroot -p ,发现能成功登录没毛病呀。然后直接在机器上部署,看一下shell脚本输出的日志,没有mysql command
·
今天用jenkins远程部署测试环境,老是发现之前的测试数据没有删除掉。
手动部署一遍发现又是正常的。
然后开始看远程部署的日志,在执行shell脚本的时候有一个mysql command not found的提示
于是我用xshell远程上去mysql -uroot -p ,发现能成功登录没毛病呀。
然后直接在机器上部署,看一下shell脚本输出的日志,没有mysql command not found的提示呀。
所以我就怀疑远程的执行的时候不行。
于是google上搜索了一下,发现也有这个问题。
其实这个问题的原因是我mysql安装在我设置的data分区里,没有在默认的/usr/bin/mysql里,ssh远程执行命令的时候它是去/usr/bin里读取的,所以自然找不到。
明白了是这个原因造成的后,我立马想到,直接设置一个软连接不就OK了吗。
于是先用which mysql 看mysql的安装路径
[root@mssp ~]# which mysql
/usr/local/mysql/bin/mysql
ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
所以我在远程命令的时候加上ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql一行命令
在执行脚本。
部署成功。
更多推荐
已为社区贡献1条内容
所有评论(0)