JeecgBoot集成TiDB,打造高效可靠的数据存储解决方案

TiDB简介

TiDBPingCAP公司自主设计、研发的开源分布式关系型数据库,同时支持在线事务处理在线分析处理 (Hybrid Transactional and Analytical Processing, HTAP) 的融合型分布式数据库产品,具备水平扩容或者缩容、金融级高可用、实时 HTAP、云原生的分布式数据库、兼容 MySQL 5.7 协议和 MySQL 生态等重要特性。

TIDB安装部署

TiDB是一个分布式系统。最基础的TiDB测试集群通常由 2 个TiDB实例、3 个TiKV实例、3 个PD实例和可选的TiFlash实例构成。

本文只是为了验证JeecgBootTiDB的兼容性,所以使用TiUP Playground在单机搭建了一套测试集群。若用于生产环境部署,请参阅TiDB官方文档。

  • 1、下载并安装 TiUP。
curl --proto '=https' --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh

安装完成后提示:

Successfully set mirror to https://tiup-mirrors.pingcap.com
Detected shell: zsh
Shell profile:  /Users/user/.zshrc
/Users/user/.zshrc has been modified to add tiup to PATH
open a new terminal or source /Users/user/.zshrc to use it
Installed path: /Users/user/.tiup/bin/tiup
===============================================
Have a try:     tiup playground
===============================================
  • 2、声明全局环境变量。
source ${your_shell_profile}
  • 3、在当前 session 执行以下命令启动集群。
    执行 tiup playground 命令会运行最新版本的 TiDB 集群,其中 TiDB、TiKV、PD 和 TiFlash 实例各 1 个
tiup playground

运行结果将显示集群的访问方式:

CLUSTER START SUCCESSFULLY, Enjoy it ^-^
To connect TiDB: mysql --comments --host 127.0.0.1 --port 4000 -u root -p (no password)
To view the dashboard: http://127.0.0.1:2379/dashboard
PD client endpoints: [127.0.0.1:2379 127.0.0.1:2382 127.0.0.1:2384]
To view the Prometheus: http://127.0.0.1:9090
To view the Grafana: http://127.0.0.1:3000
  • 4、使用Navicat访问TiDB

JeecgBoot集成TiDB

1、 初始化数据库

  • 1.1、复制一份db/jeecgboot-mysql-5.7.sql文件。
  • 1.2、打开复制的sql文件,将sys_tenantwork_place字段的字节码由utf32utf8mb4

* 1.3、保存并在数据库中执行修改后的sql文件。

如果需要将现有的支持Mysql协议的数据迁移到TiDB,可以使用TiDB官方提供的TIDB Data Migration工具。具体使用方法请参阅TiDB官方文档。

2、修改JeecgBoot配置文件

修改配置文件中的数据库连接信息

3、启动项目

打印以下配置代表项目启动成功。