04、ShardingSphere实战:ShardingSphere-JDBC垂直分片

本文详细讲解如何使用Docker容器化部署两个独立的MySQL服务器(server-user和server-order),包括容器创建、端口映射、数据卷挂载、密码插件修改以及用户表和订单表的创建,为ShardingSphere JDBC垂直分片测试环境做准备。

服务器准备

服务器规划:使用docker方式创建如下容器

  • 服务器:容器名server-user,端口3301
  • 服务器:容器名server-order,端口3302

1、 创建server-user服务器;

  • 创建容器:
```java 
docker run -d \
-p 3301:3306 \
-v /atguigu/server/user/conf:/etc/mysql/conf.d \
-v /atguigu/server/user/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
--name server-user \
mysql:8.0.29
 *  登录MySQL服务器
    
        ```java 
        #进入容器
        docker exec -it server-user env LANG=C.UTF-8 /bin/bash
        #进入容器内的mysql命令行
        mysql -uroot -p
        #修改默认密码插件
        ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
        
  • 创建表
```java 
CREATE DATABASE db_user;
USE db_user;
CREATE TABLE t_user (
 id BIGINT AUTO_INCREMENT,
 uname VARCHAR(30),
 PRIMARY KEY (id)
);
**2** 创建server-order容器  

 *  创建容器
    
        ```java 
        docker run -d \
        -p 3302:3306 \
        -v /atguigu/server/order/conf:/etc/mysql/conf.d \
        -v /atguigu/server/order/data:/var/lib/mysql \
        -e MYSQL_ROOT_PASSWORD=123456 \
        --name server-order \
        mysql:8.0.29
        
  • 登录MySQL服务器
```java 
#进入容器
docker exec -it server-order env LANG=C.UTF-8 /bin/bash
#进入容器内的mysql命令行
mysql -uroot -p
#修改默认密码插件
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
 *  创建数据库
    
        ```java 
        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) 
        );
        
##### 项目测试 #####

shardingsphere-jdbc8102-verticalSlice

ShardingTest 测试类

application.properties 属性配置

项目地址:https://gitee.com/lyhonline/JavaTechnologyLearn

版权声明:本文不是「本站」原创文章,版权归原作者所有 | 原文地址: