第三章:环境搭建实战——JDK安装、MySQL配置、调度系统服务端部署
好,咱们开始动手了。
前面两章讲了调度系统的概念和架构,说白了都是理论。这一章,咱们真刀真枪地干——把XXL-JOB跑起来。我见过太多新手卡在环境搭建这一步,其实没那么玄乎,跟着我来,半小时搞定。
3.1 JDK安装:一切的基础
XXL-JOB是Java写的,所以JDK是必须的。我个人习惯用JDK 8,虽然现在都出到17了,但8最稳,坑最少。
版本要求:JDK 1.8+,推荐JDK 8u201或更高版本
3.1.1 下载与安装
- 去Oracle官网或者用OpenJDK,下载JDK 8的安装包
- Windows直接双击安装,Linux用tar解压
- 配置环境变量
JAVA_HOME和PATH
嗯,这里要注意——环境变量配完一定要验证。我见过有人配完就以为好了,结果跑项目时报错找不到Java,排查半天发现路径写错了。
# Linux/Mac 配置示例
export JAVA_HOME=/usr/local/jdk1.8.0_201
export PATH=$JAVA_HOME/bin:$PATH
# 验证
java -version
# 输出类似:java version "1.8.0_201"
小技巧:Linux下我习惯把JDK解压到 /usr/local/ 目录,然后建个软链接,方便以后升级版本。
3.2 MySQL配置:调度数据的家
XXL-JOB需要数据库来存任务信息、调度日志这些。说白了,MySQL就是它的“记事本”。
3.2.1 安装MySQL
版本建议5.7+,8.0也行。我个人推荐5.7,因为XXL-JOB官方文档主要基于这个版本测试的。
# CentOS 安装 MySQL 5.7
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
rpm -ivh mysql57-community-release-el7-11.noarch.rpm
yum install mysql-community-server
# 启动
systemctl start mysqld
systemctl enable mysqld
3.2.2 创建数据库
安装完MySQL,第一件事就是建库。XXL-JOB官方提供了一个初始化SQL脚本,直接跑就行。
# 登录MySQL
mysql -u root -p
# 创建数据库(注意字符集)
CREATE DATABASE xxl_job DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
# 导入官方提供的SQL脚本
use xxl_job;
source /path/to/xxl-job/doc/db/tables_xxl_job.sql;
我曾经踩过的坑:字符集一定要用utf8mb4,别用utf8。为什么?因为utf8存不了emoji,虽然调度日志里不太会有表情符号,但万一任务名称里带了个特殊字符,你就等着报错吧。
3.2.3 创建调度账号
我个人习惯单独建一个账号给XXL-JOB用,不用root,安全第一。
CREATE USER 'xxl_job'@'%' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON xxl_job.* TO 'xxl_job'@'%';
FLUSH PRIVILEGES;
3.3 XXL-JOB服务端部署:核心环节
好,前面准备工作做完了,现在开始部署调度中心。说白了,就是把这个Java项目跑起来。
3.3.1 下载与配置
去GitHub下载XXL-JOB的源码包,或者直接下载编译好的jar包。我建议新手直接下载编译包,省事。
# 下载
wget https://github.com/xuxueli/xxl-job/releases/download/2.4.0/xxl-job-admin-2.4.0.jar
然后修改配置文件 application.properties:
# 数据库配置
spring.datasource.url=jdbc:mysql://localhost:3306/xxl_job?useUnicode=true&characterEncoding=utf8mb4
spring.datasource.username=xxl_job
spring.datasource.password=your_password
# 调度中心配置
server.port=8080
xxl.job.login.username=admin
xxl.job.login.password=123456
关键点:数据库连接串里的 serverTimezone 参数别忘了加,不然时间对不上。我建议用 Asia/Shanghai。
3.3.2 启动调度中心
配置改好了,直接启动:
java -jar xxl-job-admin-2.4.0.jar
看到控制台输出 Started XxlJobAdminApplication in xxx seconds,就说明启动成功了。
打开浏览器,访问 http://localhost:8080/xxl-job-admin,用刚才配的账号密码登录。嗯,看到那个清爽的管理界面了吧?
3.4 知识体系总览
为了让你对整个搭建流程有个全局认识,我画了张图:
3.5 验证与排错
启动完成后,登录管理界面,看看能不能正常显示。如果页面打不开,别慌,先检查这几个地方:
- 端口被占用?
netstat -anp | grep 8080看看 - 数据库连不上? 检查MySQL服务是否启动,账号密码对不对
- 日志报错? 看控制台输出,或者去
logs/xxl-job-admin.log里找线索
我的经验:80%的启动失败都是数据库配置问题。你想想看,数据库连接串写错一个字符,整个项目就起不来。所以配置的时候,建议直接复制粘贴,别手打。
好了,环境搭建就到这里。你现在应该能看到XXL-JOB的管理界面了。下一章咱们开始配置执行器,让任务真正跑起来。
公众号:蓝海资料掘金营,微信deep3321