大纲
ShardingSphere-JDBC 使用
垂直分片案例
准备工作
版本说明
本案例所使用的组件版本如下表所示:
| 组件 | 版本要求 |
|---|
| JDK | 11 |
| MySQL | 8.0.29 |
| SpringBoot | 2.7.18 |
| ShardingSphere-JDBC | 5.1.1 |
数据库规划
本案例是在两个 MySQL 数据库上实现的,数据库的规划如下图所示:
![]()
| 数据库服务器 | IP | 端口 | 库的名称 | 表的名称 |
|---|
用户数据库服务器(server-user) | 192.168.2.191 | 3301 | db_user | t_user |
订单数据库服务器(server-order) | 192.168.2.191 | 3302 | db_order | t_order |
数据库初始化
- 在用户数据库(
server-user)中,执行以下 SQL 语句:
1 2 3 4 5 6 7 8 9 10 11 12
| CREATE DATABASE db_user;
USE db_user;
CREATE TABLE t_user ( id BIGINT AUTO_INCREMENT, uname VARCHAR(30), PRIMARY KEY (id) );
|
案例代码
- 在订单数据库(
server-order)中,执行以下 SQL 语句:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| CREATE DATABASE db_order;
USE db_order;
CREATE TABLE t_order ( id BIGINT AUTO_INCREMENT, order_no VARCHAR(30), user_id BIGINT, amount DECIMAL(10,2), PRIMARY KEY(id) );
|