LyMySQLCore
LyMySQLCore 是离渊系列插件的数据库前置,用于统一处理 MySQL 连接、玩家数据加载锁、玩家数据保存和跨服数据安全。
凡是离渊系列插件中启用了 MySQL 存储的功能,都需要先保证 LyMySQLCore 已正常加载,并且已经成功连接数据库。
插件信息
| 项目 | 内容 |
|---|---|
| 插件名 | LyMySQLCore |
| 当前版本 | 1.0.5 |
| 作者 | Liyuan |
| 运行环境 | Bukkit / Spigot / Paper |
| Java 版本 | Java 8 |
| 主要用途 | 离渊系列插件的 MySQL 数据前置 |
警告
启用 MySQL 存储前,必须安装 LyMySQLCore,并确认控制台出现数据库连接成功提示。
如果 LyMySQLCore 未加载或连接数据库失败,依赖 MySQL 的数据读取、保存、跨服同步、冷却、次数记录等功能不会生效。
功能
| 功能 | 说明 |
|---|---|
| 数据库连接 | 统一读取 plugins/LyMySQLCore/config.yml 的 MySQL 配置 |
| 连接池 | 使用 HikariCP 维护数据库连接 |
| 玩家加载锁 | 玩家进服时先锁定并加载数据,避免跨服重复读写 |
| 玩家操作保护 | 玩家数据加载期间会限制移动、交互、打开背包、聊天和攻击等操作 |
| 安全保存 | 玩家离服、服务器关闭、周期任务都会触发保存流程 |
| 开发事件 | 提供加载、保存、周期保存事件给其它插件接入 |
启动表现
数据库连接成功时,控制台会输出类似内容:
text
[LyMySQLCore] 数据库连接成功
[LyMySQLCore] 初始化成功,插件启动成功!数据库连接失败时,插件会输出失败原因,并禁用自身。此时所有依赖 MySQL 存储的功能都不要继续测试,应先修复数据库配置。
数据表
LyMySQLCore 会自动创建基础表:
| 表名 | 用途 |
|---|---|
lymysqlcore_lock | 玩家数据锁,防止多服同时操作同一玩家数据 |
lymysqlcore_playerlog | 玩家名称与 UUID 记录 |
业务插件自己的数据表由对应插件创建或维护。