文档教程后端【免费下载链接】CodeGuide:books: 本代码库是作者小傅哥多年从事一线互联网 Java 开发的学习历程技术汇总旨在为大家提供一个清晰详细的学习教程侧重点更倾向编写Java核心内容。如果本仓库能为您提供帮助请给予支持(关注、点赞、分享)项目地址https://gitcode.com/gh_mirrors/code/CodeGuide点击查看免费下载本篇是《Lottery 分布式抽奖系统》第 5 部分「系统运维」第 04 节的实战指南核心目标是在云服务器上以 Docker 方式部署 MySQL并使用本地数据库工具完成抽奖系统库表的创建与建表语句导入。读完本篇你将掌握 MySQL 镜像的检索与拉取、容器启动与端口映射、本地客户端连接验证以及 lottery 数据库与 activity 等核心表的初始化方法为后续 xxl-job、canal 等组件的部署打好存储基础。一、本节运维目标在正式开展分布式系统运维时环境搭建是有明确先后依赖的Docker → Redis → Kafka → MySQL → xxl-job → Nacos → Elasticsearch/Kibana → canal。其中 MySQL 是整个抽奖系统的核心存储xxl-job 管理后台、canal 数据同步都依赖它因此本节需要完成拉取 MySQL 镜像并部署到 Docker 容器使用本地数据库连接工具连接云服务器上的 MySQL创建抽奖系统所需的lottery数据库并导入建表语句DDL。项目要求的运行环境为 MySQL 5.7可根据需要升级配置技术栈还包括 JDK 1.8、Maven 3.6.3、SpringBoot、MyBatis、Dubbo、MQ、Redis、分库分表、Otter 等详见 Lottery 抽奖系统介绍。二、查看可用的 MySQL 版本部署前先确认要拉取的镜像版本。两种方式任选其一方式一访问 Docker Hub 官方镜像仓库在浏览器中打开 MySQL 官方镜像的 Tags 页面可以按版本号、更新时间、是否官方认证等维度筛选镜像方式二使用docker search命令如果已在云服务器上安装 Docker参见 第01节在云服务器部署 Docker可以直接在终端执行docker search mysql命令会返回镜像名称、官方认证OFFICIAL、星级STARS、自动构建AUTOMATED等信息可以帮助你快速判断镜像的权威性与热度注意项目约定运行环境为 MySQL 5.7可升级配置若需要精确版本可直接使用带 tag 的镜像名如mysql:5.7不指定 tag 时默认拉取latest。三、拉取 MySQL 镜像确认版本后在云服务器上执行镜像拉取命令docker pull mysql:latest镜像层下载完成后终端会依次输出各层的 Pull 进度并最终提示下载完成与镜像摘要信息拉取完成后可通过docker images确认镜像是否存在。如果遇到error response from daemon: Get https://registry-1.docker.io/v2/之类的网络报错说明默认源拉取失败可以参照 第01节在云服务器部署 Docker 中给出的方案在/etc/docker/daemon.json中配置阿里云、中科大等registry-mirrors加速源后重启 Docker 再拉取。四、启动 MySQL 容器镜像就绪后使用docker run启动容器。结合本系列其他章节Kafka、xxl-job 等均通过docker run -d --name ... -p ...方式部署的惯例MySQL 的启动命令可组织为docker run -d \ --name mysql \ -p 3306:3306 \ -e MYSQL_ROOT_PASSWORD123456 \ -e MYSQL_DATABASElottery \ -v /data/mysql/conf:/etc/mysql/conf.d \ -v /data/mysql/data:/var/lib/mysql \ --restartalways \ mysql:5.7参数说明参数说明-d后台运行容器--name mysql指定容器名便于后续docker exec进入容器操作-p 3306:3306将宿主机 3306 端口映射到容器 3306供本地工具远程连接-e MYSQL_ROOT_PASSWORD123456设置 root 用户密码。密码可按需修改但需与后续应用配置保持一致-e MYSQL_DATABASElottery容器首次启动时自动创建 lottery 数据库-v /data/mysql/data:/var/lib/mysql数据卷挂载将数据库文件持久化到宿主机避免容器删除后数据丢失--restartalways容器异常退出或宿主机重启时自动拉起保证服务可用性说明项目文档中应用的 JDBC 连接示例见 第05节部署环境 xxl-job使用root/123456作为默认账号密码并带有useUnicodetruecharacterEncodingUTF-8serverTimezoneGMT%2B8的时区与字符集参数建议初始化时与之一致减少后续连接报错。五、使用本地工具连接并初始化库表容器启动后可以在本地使用数据库客户端如 Navicat、SQLyog、DBeaver 等连接云服务器 MySQL主机地址云服务器公网 IP端口3306需在云厂商安全组中放行该端口用户名/密码root / 你设置的密码连接成功后即可在lottery库中执行建表语句。抽奖系统完整的建表脚本存放在项目doc/assets/sql/lottery.sql中可直接导入更稳妥的做法是跟随当前学习分支内的 sql 版本因为需求在迭代中不断升级直接使用 master 最新脚本可能与旧分支代码不匹配这一点在 第01节环境、配置、规范 中已明确提示。lottery.sql开头会先创建数据库create database lottery;随后创建抽奖系统各业务表。以活动配置表activity为例完整语句见 第04节抽奖活动策略库表设计create table activity ( id bigint auto_increment comment 自增ID, activityId bigint null comment 活动ID, activityName varchar(64) not null comment 活动名称, activityDesc varchar(128) null comment 活动描述, beginDateTime datetime not null comment 开始时间, endDateTime datetime not null comment 结束时间, stockCount int not null comment 库存, takeCount int null comment 每人可参与次数, state int null comment 活动状态编辑、提审、撤审、通过、运行、拒绝、关闭、开启, creator varchar(64) not null comment 创建人, createTime datetime not null comment 创建时间, updateTime datetime not null comment 修改时间, constraint activity_id_uindex unique (id) ) comment 活动配置;整个抽奖系统围绕以下核心表展开活动配置表activity、策略配置表strategy概率、玩法、库存、奖品、策略明细表strategy_detail、奖品配置表award、用户参与活动记录表user_take_activity、用户活动参与次数表user_take_activity_count以及按分库分表设计的用户策略计算结果表user_strategy_export_001~004。六、MySQL 在本项目中的联动角色MySQL 部署完成并非终点它是后续多个组件的基础设施这里给出两个已在文档中确认的联动点1. xxl-job 依赖 MySQL 存储调度数据在 第05节部署环境 xxl-job 中xxl-job-admin 启动时通过 JDBC 连接 MySQL示例中为jdbc:mysql://172.17.0.6:3306/xxl_job?useUnicodetruecharacterEncodingUTF-8serverTimezoneGMT%2B8需要提前在 MySQL 中创建xxl_job库并导入对应的xxl-job.sql初始化脚本。这要求本节把 MySQL 的账号、密码、字符集与时区配置到位。2. canal 依赖 MySQL 开启 binlog在 第08节部署环境 canal 中需要把抽奖系统分库分表数据通过 canal 同步到 Elasticsearch。canal 的原理是伪装成 MySQL slave 订阅 binlog因此 MySQL 需要开启 binlog 写入功能、设置binlog-format ROW并创建一个只读权限账号用于订阅。可通过SHOW VARIABLES LIKE %log_bin%;验证是否开启。是否提前开启可根据你的学习进度决定但应知道 MySQL 5.73306 端口是该环境的既定版本基线。七、小结本节完成了抽奖系统运维链路中的存储地基搭建从docker search mysql与 Docker Hub 确认版本到docker pull mysql:latest拉取镜像再到docker run启动容器并完成端口、密码、数据持久化配置最后通过本地客户端连接云服务器 MySQL 并导入lottery.sql建表语句。MySQL 就绪后就可以继续部署 xxl-job调度、Nacos注册中心、Elasticsearch/Kibana检索与 canal数据同步逐步把 Lottery 分布式抽奖系统的完整运行环境搭建起来。本节涉及的关键仓库文档第01节在云服务器部署 Docker第02节部署环境 Redis第03节部署环境 Kafka第04节抽奖活动策略库表设计第05节部署环境 xxl-job第08节部署环境 canal赞分享文档教程后端【免费下载链接】CodeGuide:books: 本代码库是作者小傅哥多年从事一线互联网 Java 开发的学习历程技术汇总旨在为大家提供一个清晰详细的学习教程侧重点更倾向编写Java核心内容。如果本仓库能为您提供帮助请给予支持(关注、点赞、分享)项目地址https://gitcode.com/gh_mirrors/code/CodeGuide点击查看免费下载相关推荐log-lottery抽奖系统技术实现与部署指南log lottery抽奖系统技术实现与部署指南 技术架构解析 log lottery是一个基于现代前端技术栈构建的3D抽奖应用其核心架构采用分层设计理念。前前端桌面应用年会抽奖系统部署指南从零开始搭建专业抽奖平台年会抽奖系统部署指南从零开始搭建专业抽奖平台 想要让企业年会或团队活动中的抽奖环节更加专业高效吗Lucky Draw前端抽奖应用正是你需要的完美解决方案。这前端Docker部署lottery从零开始构建高可用抽奖系统的完整流程Docker部署lottery从零开始构建高可用抽奖系统的完整流程 在当今数字化时代年会抽奖活动已成为企业文化建设的重要环节。lottery作为一款基于Ex后端前端创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
企业数字化 ERP 产品动态
相关推荐
不容错过的七款开源AI编程模型:用TaoToken统一Key接入Cline与CC Switch的配置骨架 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 21:39:08
大模型推理CPU瓶颈:GPU利用率低,tokenizer预处理拖垮服务性能 摘要:GPU 卡很贵、显存还有富余,但 GPU 利用率就是上不去,QPS 卡死、延迟居高不下。排查 CUDA kernel、KV Cache、batch 调度都没用,最后发现瓶颈根本不在 GPU,而在 CPU 侧毫不起眼的 tokenizer 文本预处理。本文从现象… · 2026/9/25 21:38:55
FusionCompute 8.0部署前必须厘清的三重边界 1. 这不是“下载链接合集”,而是 FusionCompute 8.0 部署前必须厘清的三重边界你搜到的“【免费下载】FusionCompute 8.0 资源下载指南”这类标题,十有八九点进去是失效链接、诱导注册页,或是混杂着旧版本、测试版、补丁包的混乱列表。我做过… · 2026/9/25 21:38:49
魔兽世界宏命令源码实战:用Python解析与批量生成可靠宏 简介:一份面向魔兽世界玩家的宏命令指南项目源码,聚焦宏命令从基础批处理到 LUA 脚本的完整学习路径,旨在解决游戏中重复操作效率低下、技能衔接不够流畅等问题,适合新手入门及有进阶需求的玩家。源码以 HTML 主文档为核心&#x… · 2026/9/25 23:27:48
快速RAG系统落地指南:四段式链路、参数调优与避坑实践 简介:一份聚焦快速RAG系统落地的软件包与源码资源,面向需要构建高性能检索增强生成的研发人员。方案以SambaNova DeepSeek-R1作为高性能推理引擎,Qdrant通过二进制量化实现约32倍内存缩减,用1 bit压缩大幅降低向量存储开销&#x… · 2026/9/25 23:27:48
银河麒麟V10网卡驱动编译加载全指南:e1000e与rtl8125适配实战 简介:本资源是专为银河麒麟V10操作系统适配的e1000e与RTL8125网卡驱动源码包,面向国产化信创环境下的Linux内核开发者、系统集成工程师及运维人员,解决Intel和Realtek主流千兆网卡在麒麟V10上因内核版本差异导致的编译失败问题。压缩包共56个… · 2026/9/25 23:27:21
银河麒麟V10驱动编译实战:e1000e与r8125网卡驱动适配指南 简介:本资源是专为银河麒麟V10操作系统适配的e1000e与RTL8125网卡驱动源码包,面向国产化信创环境下的Linux内核开发者、系统集成工程师及政企IT运维人员,解决在该国产OS上编译主流Intel和Realtek千兆网卡驱动时常见的兼容性问题。压缩包共56个… · 2026/9/25 23:27:15
Dify官方部署包解析:GitHub Release资产与生产级配置指南 简介:本资源为 Dify 开源低代码 AI 应用开发平台的官方完整源码安装包,面向 AI 工程师、后端开发者及大模型应用实践者,用于本地快速部署、二次开发或深度学习其 RAGAgent 架构设计。压缩包含 2000 个文件,主体为 1337 个 Python … · 2026/9/25 23:27:08
词达人协议逆向工程实战:HTTP抓包、签名解析与AES解密 简介:本资源是一套面向英语学习技术爱好者与逆向分析初学者的词达人客户端抓包调试工具集,聚焦于理解词汇类App网络通信机制与本地交互逻辑。压缩包含92个文件,总大小7.4MB,主体为13个exe(含词达人工具.exe、Fiddler.e… · 2026/9/25 23:27:08
创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31
MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:37