[问题排查]通过调度系统远程执行脚本,报mysql command not found异常
2023-09-11 14:16:50 时间
今天在公司使用LS调度系统(百度内部的工具),执行远程脚本的时候,每次都失败。
脚本内容比较简单,其实就是将HDFS(AFS)中的数据插入到Palo(Doris)数据库中,脚本如下:
mysql -h xxx -P 9030 -uxxx -p'xxx' -e "LOAD LABEL baijiahao.bjh_spider_view_count_${day}_${label_time} (DATA INFILE('afs://xxx/user/feed-bjh/database/spider_view_count_showx/${day}/*') INTO TABLE bjh_spider_view_count) PROPERTIES('cluster'='feed_bjh','timeout'='86400','max_filter_ratio'='0.0001')"
我开始一直以为是我脚本的问题,一直在远程开发机测试这段脚本,发现可以正确执行,但是通过调度系统调度就会失败。
开始没有关注错误日志,突然看到日志报的错误竟然是:
mysql command not found
我在开发机测试mysql指令是没有问题的。
搜索资料以后发现,其实这个问题的原因是我mysql安装在我设置的data分区里,没有在默认的/usr/bin/mysql里,ssh远程执行命令的时候它是去/usr/bin里读取的,所以自然找不到。
通过which mysql,发现我的mysql路径是:
alias mysql='/home/work/opt/mysql/mysql-5.6.38/bin/mysql' ~/opt/mysql/mysql-5.6.38/bin/mysql
现在两种解决办法:
(1)在脚本里面写mysql的全称,
/home/work/opt/mysql/mysql-5.6.38/bin/mysql -h xxx -P 9030 -uxxx -p'xxx' -e "LOAD LABEL baijiahao.bjh_spider_view_count_${day}_${label_time} (DATA INFILE('afs://xxx/user/feed-bjh/database/spider_view_count_showx/${day}/*') INTO TABLE bjh_spider_view_count) PROPERTIES('cluster'='feed_bjh','timeout'='86400','max_filter_ratio'='0.0001')"
(2)建立软连接,需要root权限,
ln -s /home/work/opt/mysql/mysql-5.6.38/bin/mysql /usr/bin/mysql
参考
https://blog.csdn.net/qq1124794084/article/details/77529889
相关文章
- 【MySql】mysql 数据库数据订正
- Linux - mysql 异常: ERROR! MySQL is not running, but lock file (/var/lock/subsys/mysql) exists
- MySQL按照汉字的拼音排序,mysql汉字排序
- 第二百七十七节,MySQL数据库-数据表、以及列的增删改查
- MySql: 查看当前登录用户,当前数据库
- 关于mysql删除记录后id顺序不连续的解决方法
- PHP连接MySQL数据库的三种方式(mysql、mysqli、pdo)--续
- MYSQL错误解决:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
- Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
- mysql 水平分表的设计
- MYSQL随机抽取查询 MySQL Order By Rand()效率问题
- MySQL中的char和varchar&mysql中varchar能存多少汉字、数字,以及varchar(100)和varchar(10)的区别
- MySQL保留字不能作为字段名使用_Table字段不能设为关键字range,range在mysql中是分区,是mysql的关键字
- MySQL数据类型详解
- pip install mysqlclient报错: error: command ‘gcc‘ failed with exit status 1 OSError: mysql_config no
- Atitit mongodb 使用总结 1.1. 下载有点不太好下载不像mysql导出都是。。70M1 1.2. gui工具Robomongo(MongoDB/GUI管理工具) v1.0.3 官方
- Atitit mysql 存储过程捕获所有异常,以及日志记录异常信息
- Atitit mysql数据库自定义异常在java里面的捕获与处理推荐标准与规范
- MySQL Study之--Mysql无法启动“mysql.host”
- MySQL命令,一篇文章替你全部搞定
- PostgreSQL的学习心得和知识总结(三十九)|语法级自上而下完美实现MySQL数据库的 delete limit 的实现方案
- Groonga开源搜索引擎——列存储做聚合,没有内建分布式,分片和副本是随mysql或者postgreSQL作为存储引擎由MySQL自身来做分片和副本的
- 删除MySQL字段
- Mysql日志---binlog
- Mysql基础篇之索引下--05
- MySql数据库时区异常 The server time zone value 字符乱码 版本问题query_cache_size
- MySQL错误:Access denied for user ‘root‘@‘%‘ to database ‘dbname‘