1分钟 搭建xxl-job任务调度中心

文章目录

          • 一、前提环境
            • 1. 安装java环境
            • 2. 安装maven打包环境
            • 3. docker安装mysql
          • 二、搭建xxl-job 服务端(源码)
          • 三、搭建xxl-job 服务端(docker)
          • 四、常见异常解决方案
            • 4.1. docker中mysql容器的ip怎样获取?
            • 4.2. xxl-job 连接数据库失败?

一、前提环境
1. 安装java环境

下载(略)
环境变量

export JAVA_HOME=/app/jdk1.8.0_202
export PATH=$PATH:$GOROOT/bin
export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
export PATH=$PATH:${JAVA_HOME}/bin

刷新环境变量

source /etc/profile
java -version
2. 安装maven打包环境
[root@localhost app]# wget https://mirror.bit.edu.cn/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
[root@localhost app]# tar -zxvf apache-maven-3.6.3-bin.tar.gz
[root@localhost app]# echo 'export PATH=/app/apache-maven-3.6.3/bin:$PATH' >>/etc/profile
[root@localhost app]# source  /etc/profile
[root@localhost app]# mvn -v
Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: /app/apache-maven-3.6.3配置阿里云仓库镜像
[root@localhost app]# cd apache-maven-3.6.3/conf/
[root@localhost conf]# vim settings.xml

找到节点添加即可

   <mirror><id>alimaven</id><name>aliyun maven</name><url>http://maven.aliyun.com/nexus/content/groups/public/</url><mirrorOf>central</mirrorOf></mirror>
3. docker安装mysql

docker 安装 mysql和Navicat Premium 远程连接
https://gblfy.blog.csdn.net/article/details/113809710

二、搭建xxl-job 服务端(源码)

Github地址:https://www.xuxueli.com/xxl-job/

# 调度数据库初始化SQL脚本” 并执行
调度数据库初始化SQL脚本” 位置为:
/xxl-job/doc/db/tables_xxl_job.sql# 在线下载
wget https://github.com/xuxueli/xxl-job/archive/2.3.0.tar.gz# 解压
tar -zxvf xxl-job-2.3.0.tar.gz# 配置mysql密码
vim xxl-job-2.3.0/xxl-job-admin/src/main/resources/application.properties# 项目编译打包
cd xxl-job-2.3.0/
mvn clean install -DskipTests# xxl-job后台部署
cd xxl-job-2.3.0/xxl-job-admin/target
nohup java -jar xxl-job-admin-2.3.0.jar &# 开放8080端口
firewall-cmd --zone=public --add-port=8080/tcp --permanent# 重启防火墙
firewall-cmd --reload# 浏览器访问
http://192.168.43.119:8080/xxl-job-admin/账号/密码:admin/123456

在这里插入图片描述
在这里插入图片描述
至此“调度中心”项目已经部署成功。

三、搭建xxl-job 服务端(docker)
# 拉取镜像
docker pull xuxueli/xxl-job-admin:2.3.0# 创建容器并运行(这是注意mysql也在docker容器中)
# 第一种:docker中的xxl-job连接docker中的mysql
docker run -e PARAMS="--spring.datasource.url=jdbc:mysql://172.17.0.2:3306/xxl_job?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true --spring.datasource.password=root" -p 8080:8080 -v /tmp:/data/applogs --name xxl-job-admin  -d xuxueli/xxl-job-admin:2.3.0# 普通非docker中的mysql(密码默认)
# 第二种:docker中的xxl-job连接宿主机上的mysql
docker run -p 8080:8080 -v /tmp:/data/applogs --name xxl-job-admin  -d xuxueli/xxl-job-admin:2.3.0# 普通非docker中的mysql(密码非默认)
# 第三种:docker中的xxl-job连接宿主机上的mysql
docker run -e PARAMS="--spring.datasource.password=root" -p 8080:8080 -v /tmp:/data/applogs --name xxl-job-admin  -d xuxueli/xxl-job-admin:2.3.0注:
1.以上属于2种场景(都是docker中应用和一个是docker应用一个不是)
2.第一种:不要添加&serverTimezone=Asia/Shanghai因为docker容器内部不识别,待定位具体原因
3.对于docker中的应用和docker中的应用之间要通信连接,需要连接docker内部的ip,而非宿主机的ip

账号/密码:
admin/123456
在这里插入图片描述

在这里插入图片描述

四、常见异常解决方案
4.1. docker中mysql容器的ip怎样获取?

docker 中用docker 启动应用访问docker中的mysql
https://gblfy.blog.csdn.net/article/details/113810453

4.2. xxl-job 连接数据库失败?

现象:
在这里插入图片描述
解决方案:
通过查看docker中启动的xuxueli/xxl-job-admin:2.3.0容器的日志定位和分析问题‘

# 查看正在运行的xuxueli/xxl-job-admin:2.3.0容器的容器id
[root@localhost ~]# docker ps
CONTAINER ID        IMAGE                         COMMAND                  CREATED             STATUS              PORTS                               NAMES
5863bea66ff4        xuxueli/xxl-job-admin:2.3.0   "sh -c 'java -jar $J…"   5 minutes ago       Up 5 minutes        0.0.0.0:8080->8080/tcp              xxl-job-admin
8172ef0f622c        mysql                         "docker-entrypoint.s…"   39 minutes ago      Up 9 minutes        0.0.0.0:3306->3306/tcp, 33060/tcp   mymysql
[root@localhost ~]# docker logs -f 5863bea66ff4

异常关键日志:

com.mysql.cj.exceptions.CJException: Unknown database 'xxl_job'从日志中可以看出,很明显连接不上这个数据库

在这里插入图片描述
通过客户端连接mysql服务端查看xxl_job是否存在
在这里插入图片描述
由于mysql容器是咱们刚创建的因此xxl_job不存在
解决方案:
1.创建数据库
2.初始化表结构
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/518831.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Schedulerx2.0分布式计算原理最佳实践

1. 前言 Schedulerx2.0的客户端提供分布式执行、多种任务类型、统一日志等框架&#xff0c;用户只要依赖schedulerx-worker这个jar包&#xff0c;通过schedulerx2.0提供的编程模型&#xff0c;简单几行代码就能实现一套高可靠可运维的分布式执行引擎。 这篇文章重点是介绍基于…

一个优秀的可定制化Flutter相册组件,看这一篇就够了

背景 在做图片、视频相关功能的时候&#xff0c;相册是一个绕不开的话题&#xff0c;因为大家基本都有从相册获取图片或者视频的需求。最直接的方式是调用系统相册接口&#xff0c;基本功能是满足的&#xff0c;一些高级功能就不行了&#xff0c;例如自定义UI、多选图片等。 …

牛客网SQL篇刷题篇(24-31)

https://www.nowcoder.com/ta/sql 1.NOT IN NOT IN运算符允许从结果集中排除特定值的列表。 2.sql子查询 https://www.cnblogs.com/fzxey/p/10896244.html#where%E5%AD%90%E6%9F%A5%E8%AF%A2 子查询就是将一个查询&#xff08;子查询&#xff09;的结果作为另一个查询&…

最近看Kafka源码,着实被它的客户端缓冲池技术优雅到了

作者 | 犀牛饲养员责编 | 徐威龙封图| CSDN 下载于视觉中国最近看kafka源码&#xff0c;着实被它的客户端缓冲池技术优雅到了。忍不住要写篇文章赞美一下&#xff08;哈哈&#xff09;。注&#xff1a;本文用到的源码来自kafka2.2.2版本。背景当我们应用程序调用kafka客户端 pr…

相信坚持的力量,我的程序员打怪升级之路

我是来自阿里云-云通信技术团队的玄照&#xff0c;2015年底进入阿里&#xff0c;刚渡过三年醇&#xff0c;正迈向五年陈的路上。个人兴趣爱好广泛&#xff0c;静的、动的&#xff0c;音乐、游戏、电影、运动都比较喜欢。 玄照&#xff0c;阿里云高级技术专家 程序生涯启航 第…

牛客网SQL篇刷题篇(32-37)

https://www.nowcoder.com/ta/sql 1.sql group_contact()、concat()、concat_ws函数 https://blog.csdn.net/qq_36250202/article/details/99308824 eg:将employees表的所有员工的last_name和first_name拼接起来作为Name&#xff0c;中间以一个空格区分 SELECT CONCAT(las…

支付宝工程师如何搞定关系数据库的“大脑”——查询优化器

前言 查询优化器是关系数据库系统的核心模块&#xff0c;是数据库内核开发的重点和难点&#xff0c;也是衡量整个数据库系统成熟度的“试金石”。 查询优化理论诞生距今已有四十来年&#xff0c;学术界和工业界其实已经形成了一套比较完善的查询优化框架(System-R 的 Bottom-…

SpringBoot2 集成 xxl-job任务调度中心

接上一篇&#xff1a; 搭建xxl-job任务调度中心 https://gblfy.blog.csdn.net/article/details/113809843 文章目录一、SpringBoot 配置1. maven依赖2. 执行器配置 application.yml3. 执行器组件配置4. 部署执行器项目二、xxl-job任务调度中心2.1. 执行器管理2.2. 任务管理三、…

HelloWorld

HelloWorld 创建一个Java文件 文件后缀名为.javaHello.java 编写代码 public class Hello{public static void main(String[] args){System.out.print("Hello, world!");} }编译java文件 javac Hello.java会多出一个Hello.class 文件 运行class文件 java Hell…

运行Java程序时 Tomcat出错 显示端口被占用

解决方法&#xff1a;命令提示符&#xff08;管理员&#xff09; 输入netstat -ano | findstr 8080 检查8080端口有哪些进程 输入taskkill -pid 11728 -f 关闭11728的进程

从开源小白到 Apache Member,我的成长之路

我们走过的每一步路&#xff0c;都会留下印记&#xff0c;越坚实&#xff0c;越清晰。 近日&#xff0c;Apache 软件基金会&#xff08;ASF&#xff09;官方 Blog 宣布全球新增 40 位 Apache Member&#xff0c;张乎兴有幸成为其中一位。 目前&#xff0c;全球共有771位 ASF …

当你打开天猫的那一刻,推荐系统做了哪些工作?

当年打开天猫的那一刻&#xff0c;它为你完成了华丽的变身&#xff0c;成为世上独一无二的“天猫”&#xff0c;这就是智能推荐的力量。今天&#xff0c;来自阿里巴巴搜索推荐事业部的算法工程师陈启伟为你介绍天猫如何玩转首页个性化推荐&#xff0c;揭开搜索推荐的神秘面纱。…

百万人学AI:CSDN重磅共建人工智能技术新生态

站在AI发展的新十年起点上&#xff0c;CSDN将发挥开发者优势&#xff0c;与中国AI各行业和企业共建“百万人学AI”新技术生态。作者 | CSDN新媒体事业部8年前&#xff0c;现图灵奖得主Hinton团队在ImageNet竞赛中首次使用深度学习完胜Google等其它团队&#xff0c;顿时让工业界…

牛客网SQL篇刷题篇(38-47)

1.视图&#xff1a;视图是可视化的表。 视图的作用&#xff1a; 第一点&#xff1a;使用视图&#xff0c;可以定制用户数据&#xff0c;聚焦特定的数据。 解释&#xff1a; 在实际过程中&#xff0c;公司有不同角色的工作人员&#xff0c;我们以销售公司为例的话&#xff0…

SpringBoot2 集成 xxl-job任务调度中心_参数传递

文章目录一、xxl-job任务调度中心1. 调度中心创建任务2. 调度中心创建执行器二、执行器任务编码2.1. 单参数2.2. 多参数三、调度中心参数传递测试3.1. 单个参数传递3.2. 多个参数传递前提&#xff1a;执行器和xxl-job任务调度中心启动完毕 一、xxl-job任务调度中心 1. 调度中心…

Java-用IDEA创建Java项目

1. 创建项目 2. 创建空项目 3. 输入项目名 &#xff14;.配置JDK 点击Project Structure 配置JDK 点击Apply->OK 5. 新建模块 https://www.bilibili.com/video/BV12J41137hu?p21&spm_id_frompageDriver

DevOps:从「蒸汽时代」到「高铁时代」,SUNMI DevOps转型之路 | 原力计划

作者 | 文振熙、刘文沣责编 | 徐威龙封图| CSDN 下载于视觉中国商米科技成立于 2013 年&#xff0c;总部位于上海市杨浦区创智天地&#xff0c;是一家具有产品创新基因和互联网基因的公司。商米在短时间内迅速成长为一家近1000人的企业&#xff0c;产品研发人数占比一度超过70%…

SpringBoot2 集成 xxl-job任务调度中心_路由策略

文章目录一、简述二、故障转移演示2.1. 启动2个执行器2.2. 添加执行器ip2.3. 故障转移策略2.4. 启动任务2.5. 模拟8081执行器宕机2.6. 结论三、轮训策略演示3.1. 启动2个执行器3.2. 添加执行器ip3.3. 轮训策略3.4. 启动任务3.5. 日志分析3.6. 故障转移3.7. 重新启动8082执行器四…

Uniapp组件之间传参

1.父组件内引入子组件&#xff0c;并且子组件使用父组件内的数据 将子组件引入到父组件&#xff1a; <uni-pop :opts"defaultOptions"></uni-pop> import uniPop from /components/uniPop/uniPop.vue 子组件使用父组件内的数据&#xff1a; 2------创建…

基于大数据的舆情分析系统架构 - 架构篇

前言 互联网的飞速发展促进了很多新媒体的发展&#xff0c;不论是知名的大V&#xff0c;明星还是围观群众都可以通过手机在微博&#xff0c;朋友圈或者点评网站上发表状态&#xff0c;分享自己的所见所想&#xff0c;使得“人人都有了麦克风”。不论是热点新闻还是娱乐八卦&am…