第三章:环境搭建实战——JDK安装、MySQL配置、调度系统服务端部署

好,咱们开始动手了。

前面两章讲了调度系统的概念和架构,说白了都是理论。这一章,咱们真刀真枪地干——把XXL-JOB跑起来。我见过太多新手卡在环境搭建这一步,其实没那么玄乎,跟着我来,半小时搞定。

3.1 JDK安装:一切的基础

XXL-JOB是Java写的,所以JDK是必须的。我个人习惯用JDK 8,虽然现在都出到17了,但8最稳,坑最少。

版本要求:JDK 1.8+,推荐JDK 8u201或更高版本

3.1.1 下载与安装

  1. 去Oracle官网或者用OpenJDK,下载JDK 8的安装包
  2. Windows直接双击安装,Linux用tar解压
  3. 配置环境变量 JAVA_HOMEPATH

嗯,这里要注意——环境变量配完一定要验证。我见过有人配完就以为好了,结果跑项目时报错找不到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 知识体系总览

为了让你对整个搭建流程有个全局认识,我画了张图:

环境搭建核心流程 JDK 安装 版本:1.8+ MySQL 配置 版本:5.7+ / 8.0 XXL-JOB 部署 端口:8080 详细步骤: 1. 安装 JDK 8,配置 JAVA_HOME 环境变量 2. 安装 MySQL,创建 xxl_job 数据库并导入初始化脚本 3. 修改 application.properties,配置数据库连接和登录信息 4. 启动 XXL-JOB,访问 http://localhost:8080/xxl-job-admin 5. 登录管理界面,验证调度中心是否正常运行

3.5 验证与排错

启动完成后,登录管理界面,看看能不能正常显示。如果页面打不开,别慌,先检查这几个地方:

  • 端口被占用? netstat -anp | grep 8080 看看
  • 数据库连不上? 检查MySQL服务是否启动,账号密码对不对
  • 日志报错? 看控制台输出,或者去 logs/xxl-job-admin.log 里找线索

我的经验:80%的启动失败都是数据库配置问题。你想想看,数据库连接串写错一个字符,整个项目就起不来。所以配置的时候,建议直接复制粘贴,别手打。

好了,环境搭建就到这里。你现在应该能看到XXL-JOB的管理界面了。下一章咱们开始配置执行器,让任务真正跑起来。


公众号:蓝海资料掘金营,微信deep3321