ActionTech DBLE 分布式数据库中间件快速入门指南
2025-06-20 18:16:46作者:宣利权Counsellor
前言
ActionTech DBLE 是一款基于 MySQL 协议的高性能分布式数据库中间件,它能够帮助用户轻松实现数据库的水平扩展和分片管理。本文将带领您快速完成 DBLE 的安装部署和基础使用,让您能够在最短时间内体验 DBLE 的核心功能。
环境准备
在开始安装 DBLE 之前,我们需要确保系统满足以下基本要求:
1. MySQL 实例准备
DBLE 本身不存储数据,而是作为中间件连接后端的 MySQL 实例。您需要准备:
- 至少两个运行中的 MySQL 实例(版本建议 5.6 及以上)
- 确保实例网络可达,建议配置 /etc/hosts 文件避免连接问题
- 记录好每个实例的连接信息(IP、端口、用户名、密码)
示例配置:
- 实例A:IP1:3306,用户test,密码testPsw
- 实例B:IP2:3306,用户test,密码testPsw
2. Java 环境
DBLE 基于 Java 开发,需要:
- JDK 1.8 或更高版本
- 正确配置 JAVA_HOME 环境变量
- 建议内存不少于 2GB
安装步骤
1. 获取安装包
从官方渠道获取最新版本的 DBLE 安装包(通常为 tar.gz 格式)。
2. 解压安装
执行以下命令完成基本安装:
# 创建工作目录
mkdir -p /opt/dble
cd /opt/dble
# 解压安装包
tar -xvf actiontech-dble-<version>.tar.gz
# 进入配置目录
cd dble/conf
# 初始化配置文件
mv cluster_template.cnf cluster.cnf
mv bootstrap_template.cnf bootstrap.cnf
mv db_template.xml db.xml
mv user_template.xml user.xml
mv sharding_template.xml sharding.xml
配置详解
1. 数据库连接配置
编辑 db.xml 文件,配置后端 MySQL 实例连接信息:
<dbInstance name="instanceM1"
url="ip1:3306"
user="your_user"
password="your_psw"
maxCon="1000"
minCon="10"
primary="true">
<dbInstance name="instanceM2"
url="ip2:3306"
user="your_user"
password="your_psw"
maxCon="1000"
minCon="10"
primary="true"/>
关键参数说明:
name:实例名称,后续分片规则会引用url:MySQL 实例地址和端口user/password:连接凭证maxCon/minCon:连接池大小primary:是否为主实例
2. 其他配置文件
user.xml:定义 DBLE 的用户权限sharding.xml:配置分片规则cluster.cnf:集群相关配置bootstrap.cnf:启动参数配置
启动与验证
1. 启动 DBLE
cd /opt/dble/dble
bin/dble start
2. 检查启动状态
查看日志确认启动是否成功:
tail -f logs/wrapper.log
常见问题排查:
- 端口冲突:检查 8066/9066 端口是否被占用
- 连接失败:确认后端 MySQL 实例可访问
- 内存不足:调整 bootstrap.cnf 中的内存参数
基本操作
1. 管理端口连接
DBLE 提供两个服务端口:
-
管理端口(9066):用于系统管理
mysql -p -P9066 -h 127.0.0.1 -u man1默认密码:654321
常用管理命令:
-- 创建分片节点 create database @@shardingnode='dn$1-6'; -- 查看运行状态 show @@version; show @@connection; -
服务端口(8066):用于业务SQL执行
mysql -p -P8066 -h 127.0.0.1 -u root默认密码:123456
2. 基础SQL操作
-- 创建测试数据库
use testdb;
-- 创建分片表
drop table if exists tb_enum_sharding;
create table if not exists tb_enum_sharding (
id int not null,
code int not null,
content varchar(250) not null,
primary key(id)
)engine=innodb charset=utf8;
-- 插入测试数据
insert into tb_enum_sharding values(1,10000,'1'),(2,10010,'2'),(3,10000,'3'),(4,10010,'4');
进阶建议
完成基础部署后,您可以进一步探索:
- 分片规则配置:在 sharding.xml 中定义适合业务的数据分布策略
- 用户权限管理:通过 user.xml 细化访问控制
- 性能调优:调整连接池大小、缓存配置等参数
- 高可用配置:设置主从切换和故障转移机制
结语
通过本文,您已经完成了 DBLE 的基础部署和简单使用。作为一款功能强大的分布式数据库中间件,DBLE 能够有效解决 MySQL 在扩展性方面的挑战。建议在实际生产环境中部署前,充分测试并规划好分片策略,以确保系统的最佳性能。
登录后查看全文
热门项目推荐
Kimi-K2.5Kimi K2.5 是一款开源的原生多模态智能体模型,它在 Kimi-K2-Base 的基础上,通过对约 15 万亿混合视觉和文本 tokens 进行持续预训练构建而成。该模型将视觉与语言理解、高级智能体能力、即时模式与思考模式,以及对话式与智能体范式无缝融合。Python00
GLM-4.7-FlashGLM-4.7-Flash 是一款 30B-A3B MoE 模型。作为 30B 级别中的佼佼者,GLM-4.7-Flash 为追求性能与效率平衡的轻量化部署提供了全新选择。Jinja00
VLOOKVLOOK™ 是优雅好用的 Typora/Markdown 主题包和增强插件。 VLOOK™ is an elegant and practical THEME PACKAGE × ENHANCEMENT PLUGIN for Typora/Markdown.Less00
PaddleOCR-VL-1.5PaddleOCR-VL-1.5 是 PaddleOCR-VL 的新一代进阶模型,在 OmniDocBench v1.5 上实现了 94.5% 的全新 state-of-the-art 准确率。 为了严格评估模型在真实物理畸变下的鲁棒性——包括扫描伪影、倾斜、扭曲、屏幕拍摄和光照变化——我们提出了 Real5-OmniDocBench 基准测试集。实验结果表明,该增强模型在新构建的基准测试集上达到了 SOTA 性能。此外,我们通过整合印章识别和文本检测识别(text spotting)任务扩展了模型的能力,同时保持 0.9B 的超紧凑 VLM 规模,具备高效率特性。Python00
KuiklyUI基于KMP技术的高性能、全平台开发框架,具备统一代码库、极致易用性和动态灵活性。 Provide a high-performance, full-platform development framework with unified codebase, ultimate ease of use, and dynamic flexibility. 注意:本仓库为Github仓库镜像,PR或Issue请移步至Github发起,感谢支持!Kotlin07
compass-metrics-modelMetrics model project for the OSS CompassPython00
项目优选
收起
deepin linux kernel
C
27
11
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
522
3.71 K
Ascend Extension for PyTorch
Python
327
384
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
875
576
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
334
161
暂无简介
Dart
762
184
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.32 K
744
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
12
1
React Native鸿蒙化仓库
JavaScript
302
349
华为昇腾面向大规模分布式训练的多模态大模型套件,支撑多模态生成、多模态理解。
Python
112
134