7、ShardingSphere 之 Sharding-Proxy
文章目录
- 简介
- 1 进入conf目录,修改server.yaml
- 2 进入conf目录,修改config-sharding.yaml
- 2.1 拷贝mysql驱动到Sharding-Proxy的lib目录
- 2.2 修改 config-sharding.yaml 文件
- 2.3 本地创建一个数据库
- 3 启动Sharding-Proxy服务
- 4 通过Sharding-Proxy启动端口进行连接
- 4.1 打开Navicat for Mysql 15 连接sharding-proxy
- 4.2 进行sql命令操作看到只有一个库
- 4.3 在sharding_db库中创建表
- 4.4 向表中添加一条记录
- 5 回到本地3306端口数据库中,看到已经创建好了表和添加了数据
简介
定位为透明化的数据库代理端,提供封装了数据库二进制协议的服务端版本,用于完成对异构语言的支持。 目前先提供MySQL/PostgreSQL版本,它可以使用任何兼容MySQL/PostgreSQL协议的访问客户端(如:MySQL Command Client, MySQL Workbench, Navicat等)操作数据,对DBA更加友好。
向应用程序完全透明,可直接当做MySQL/PostgreSQL使用。
适用于任何兼容MySQL/PostgreSQL协议的的客户端。
1 进入conf目录,修改server.yaml
authentication:users:root:password: rootsharding:password: sharding authorizedSchemas: sharding_dbprops:max.connections.size.per.query: 1acceptor.size: 16 # The default value is available processors count * 2.executor.size: 16 # Infinite by default.proxy.frontend.flush.threshold: 128 # The default value is 128.# LOCAL: Proxy will run with LOCAL transaction.# XA: Proxy will run with XA transaction.# BASE: Proxy will run with B.A.S.E transaction.proxy.transaction.type: LOCALproxy.opentracing.enabled: falsequery.with.cipher.column: truesql.show: false
2 进入conf目录,修改config-sharding.yaml
2.1 拷贝mysql驱动到Sharding-Proxy的lib目录
将mysql 驱动 mysql-connector-java-8.0.15.jar 复制到Sharding-Proxy的lib目录中
2.2 修改 config-sharding.yaml 文件
schemaName: sharding_dbdataSources:ds_0:url: jdbc:mysql://127.0.0.1:3306/edu1?serverTimezone=UTC&useSSL=falseusername: rootpassword: chengwenconnectionTimeoutMilliseconds: 30000idleTimeoutMilliseconds: 60000maxLifetimeMilliseconds: 1800000maxPoolSize: 50shardingRule:tables:t_order:actualDataNodes: ds_${0}.t_order_${0..1}tableStrategy:inline:shardingColumn: order_idalgorithmExpression: t_order_${order_id % 2}keyGenerator:type: SNOWFLAKEcolumn: order_idbindingTables:- t_orderdefaultDatabaseStrategy:inline:shardingColumn: user_idalgorithmExpression: ds_${0}defaultTableStrategy:none:
2.3 本地创建一个数据库
CREATE SCHEMA `edu1` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci ;
3 启动Sharding-Proxy服务
进入bin目录,执行命令启动Sharding-Proxy
chengwen@chengwen bin % ./start.sh
Starting the Sharding-Proxy ...
Please check the STDOUT file: /Users/chengwen/apache-shardingsphere-incubating-4.0.1-sharding-proxy-bin/logs/stdout.log
chengwen@chengwen bin %
查看日志,出现端口号3307(默认),ACTIVE表示成功
[INFO ] 00:27:18.350 [nioEventLoopGroup-2-1] i.n.handler.logging.LoggingHandler - [id: 0x7014d160] REGISTERED
[INFO ] 00:27:18.352 [nioEventLoopGroup-2-1] i.n.handler.logging.LoggingHandler - [id: 0x7014d160] BIND: 0.0.0.0/0.0.0.0:3307
[INFO ] 00:27:18.355 [nioEventLoopGroup-2-1] i.n.handler.logging.LoggingHandler - [id: 0x7014d160, L:/0.0.0.0:3307] ACTIVE
4 通过Sharding-Proxy启动端口进行连接
4.1 打开Navicat for Mysql 15 连接sharding-proxy
4.2 进行sql命令操作看到只有一个库
4.3 在sharding_db库中创建表
create table if not exists ds_0.t_order(
order_id bigint not null,
user_id int not null,
status varchar(50),
primary key(order_id)
);
4.4 向表中添加一条记录
USE sharding_db;show tables;select * from t_order;insert into t_order(order_id,user_id,status) values (11,1,'init');select * from t_order;
5 回到本地3306端口数据库中,看到已经创建好了表和添加了数据
本地库edu1需要自己创建,数据表和数据记录会由sharding-proxy自动创建
7、ShardingSphere 之 Sharding-Proxy相关推荐
- Sharding Proxy 实战
理论参考:MySQL 高级框架实战理论笔记 GitHub 代码:lane-mysql-42 文章目录 单纯的 MySQL 实现 建表 SQL 下载并配置 sharding porxy 添加 mysql ...
- spring.shardingsphere.rules.sharding.sharding-algorithms.database_inline.props‘ is not valid
spring.shardingsphere.rules.sharding.sharding-algorithms.database_inline.props' is not valid 解决方案: 原 ...
- ShardingSphere源码解析 初步准备
简介 源码阅读解析前,肯定是要对其有一个初步的了解,其用于解决问题,用于哪些场景.并上手本地跑一跑官方示例之类,开始阅读解析的第一步,为后面做准备. 阅读解析准备 GitHub和项目官网是了解的好途径 ...
- Apache ShardingSphere 一文读懂
一.Apache ShardingSphere的概述 1.概述 官网:http://shardingsphere.apache.org/index_zh.html 下载地址:https://shard ...
- Apache ShardingSphere
ShardingSphere 1.1分库分表是啥? 简单来说.就是指通过某种特定的条件,将我们存放在同一个数据库中的数据分散到多个数据库(主机)上面,以达到分散单台设备负载的效果 分库分表解决的问题 ...
- ShardingSphere学习(超详细)
文章目录 @[toc] 第01章 高性能架构模式 1.读写分离架构 2.数据库分片架构 2.1.垂直分片 2.2.水平分片 3.读写分离和数据分片架构 4.实现方式 4.1.程序代码封装 4.2.中间 ...
- Sharding jdbc
一.Sharding Sphere简介 定义:Apache ShardingSphere 是一款开源分布式数据库生态项目,由 JDBC.Proxy 和 Sidecar(规划中) 3 款产品组成.其核心 ...
- Springboot2.x +JPA 集成 Apache ShardingSphere 分表+读写分离
分库分表背景: 数据库性能瓶颈:主要分为按照业务来划分或者按照数据量来划分. 拆分方式: 水平拆分(每个表的结构都一样):订单表数据量大,我们可以水平拆分 ,分成order表1.order表2.ord ...
- Springboot2.x +JPA 集成 Apache ShardingSphere 同库分表
分库分表背景: 数据库性能瓶颈:主要分为按照业务来划分或者按照数据量来划分. 拆分方式: 水平拆分(每个表的结构都一样):订单表数据量大,我们可以水平拆分 ,分成order表1.order表2.ord ...
- Springboot2.x +JPA 集成 Apache ShardingSphere 分库分表
分库分表背景: 数据库性能瓶颈:主要分为按照业务来划分或者按照数据量来划分. 拆分方式: 水平拆分(每个表的结构都一样):订单表数据量大,我们可以水平拆分 ,分成order表1.order表2.ord ...
最新文章
- Python中怎样改变集合之间的关系?
- Android GLSurfaceView.Renderer 类 onDrawFrame 方法的刷新机制
- chrome 控制台js调试与断点调试
- Android开源框架——图片加载库Glide
- c 调用java程序_C ++可以调用Java代码吗?
- 【华为云技术分享】实战案例丨代码优化:如何去除context中的warning?
- 服务器虚拟化的主备,云服务器可以主备切换
- 黑马程序员之Java集合类详解
- c语言求行列式的值原理,新手作品:行列式计算C语言版
- java怎么用一行代码初始化ArrayList
- web前端简历个人技能该怎么写?
- 【期末复习】现代管理科学基础
- wordpress添加Auto Highslide图片灯箱效果
- PowerDesigner书签(03)显示comment字段注释内容
- 局域网访问提示无法访问检查拼写_windows无法访问请检查名称的拼写… 错误代码:0x80070035 | 吴文辉博客...
- android 图片跑马灯动画,【Android自定义View】- 文本跑马灯效果
- linux查看进程和端口信息的命令
- Matlab使用Usrp进行数据收发
- 芯片模型算力指标TOPS FLOPS MAC MACC MADD关系
- 【mysql知识点整理】 --- 准确理解 in 和 exists
热门文章
- 商淘多b2b2c商城系统怎么在个人电脑上安装_b2b2c商城系统免费模板怎么用?
- 双稳态电路的两个稳定状态是什么_干货|常见的脉冲电路到底有何用途和特点?终于了解了!|脉冲|晶体管|双稳|单稳|振荡器...
- python 堆_40道Python经典面试题(附答案)
- python3.9特性_Python3.9的7个特性
- python nonetype转换float_如何在Python中将NoneType值从聚合转换为float?
- python3.7.2安装包_Win10下python 2.7与python 3.7双环境安装教程图解
- centeros7 mysql,center os 7 Mysql 安装
- python 发送邮件正文字体设置_python 文字 坐标python smtplib模块发送SSL/TLS安全邮件实例...
- 如何用php获取网页表格,PHP获取网页上任意表格中内容的通用程序的制作
- lamp mysql脚本_初次尝试利用脚本自动编译搭建LAMP-----Mysql