dble是上海爱可?信息技术股份有限公司基于mysql的?可扩展性的分布式中间件,存在以下?个优势特性:
DBLE官方网站:https://opensource.actionsky.com
可以详细了解DBLE的背景和应用场景,本文不涉及到的细节都可在官方文档获得更细节都信息;对于刚了解到同学,可以以本文为快速入门基础
DBLE官方项目:https://github.com/actiontech/dble
如对源码有兴趣或者需要定制的功能的可以通过源码编译
DBLE下载地址:https://github.com/actiontech/dble/releases
建议下载最新的releases版本,下载tar压缩包即可,如有源码编译需求的,可以下载源码包
介绍如何使?dble安装包快速部署并启动?个dble服务,并简单了解dble的使?和管理
两个启动的MySQL实例
dble是通过连接mysql数据库实例来进?数据的存储,所以请?少准备两个正在运?的mysql实例
主机 | IP | 端口 | 说明 |
---|---|---|---|
study01 | 10.186.65.68 | 8066/9066 | DBLE实例,服务端口8066,管理端口9066 |
study01 | 10.186.65.71 | 5555 | MySQL实例M1 |
study01 | 10.186.65.72 | 4444 | MySQL实例M2 |
JVM环境
dble是使?java开发的,所以需要启动dble您先需要在机器上安装java版本1.8或以上,并且确保JAVA_HOME参数被正确的设置
[root@study01 ~]# yum install -y java
[root@study01 ~]# java -version
openjdk version "1.8.0_292"
OpenJDK Runtime Environment (build 1.8.0_292-b10)
OpenJDK 64-Bit Server VM (build 25.292-b10, mixed mode)
通过此链接( https://github.com/actiontech/dble/releases )下载最新版本的安装包
解压到指定文件夹中
tar -zxvf dble-3.21.02.0-20210419095547-linux.tar.gz -C /data
[root@study01 ~]# cd /data/dble/
[root@study01 dble]# ls
algorithm bin conf lib logs version.txt
DBLE的配置文件都在conf目录里面
[root@study01 dble]# cd conf/
[root@study01 conf]# ls
bootstrap.dynamic.cnf dbseq.sql partition-enum.txt sequence_db_conf.properties
bootstrap_template.cnf db_template.xml partition-number-range.txt sharding_template.xml
cacheservice.properties ehcache.xml partition-pattern.txt template_table.sql
cluster_template.cnf log4j2.xml sequence_conf.properties user_template.xml
[root@study01 conf]# cp -a bootstrap_template.cnf bootstrap.cnf
[root@study01 conf]# cp -a cluster_template.cnf cluster.cnf
[root@study01 conf]# cp -a db_template.xml db.xml
[root@study01 conf]# cp -a sharding_template.xml sharding.xml
[root@study01 conf]# cp -a user_template.xml user.xml
配置?档列表以及相关对应功能
重要?志及?件
修改db.xml,找到其中的 instanceM1 和 instanceM2,将数据库信息替换成已经安装启动的 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"/>
[root@study01 dble]# ./bin/dble start
Starting dble-server...
tail -f logs/wrapper.log
安装MySQL客户端
[root@study01 dble]# yum install -y mysql
[root@study01 dble]# mysql -V
mysql Ver 15.1 Distrib 5.5.68-MariaDB, for Linux (x86_64) using readline 5.1
使?mysql客?端直接连接dble管理端?,默认用户man1
密码654321
mysql -uman1 -p -h127.0.0.1 -P9066
您可以使?mysql?样的?式执?以下语句?于在实例上建?虚拟结点对应的schema
create database @@shardingnode=‘dn$1-6‘;
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| db_2 |
| db_4 |
| db_6 |
使?mysql客?端直接连接dble服务,默认用户root
密码123456
[root@study01 dble]# mysql -uroot -p -h127.0.0.1 -P8066
MySQL [(none)]> show databases;
+----------+
| DATABASE |
+----------+
| testdb |
+----------+
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‘);
easydb.net
微信公众号:easydb
关注我,不走丢!原文:https://www.cnblogs.com/easydb/p/14753642.html