Sharding-Proxy

10/14/2022 Sharding-JDBC

# 第一章 Proxy简介

配置是 ShardingSphere-Proxy 中唯一与开发者交互的模块,通过它可以快速清晰的理解 ShardingSphere-Proxy 所提供的功能。

ShardingSphere-Proxy 提供基于 YAML 的配置方式,并使用 DistSQL 进行交互。 通过配置,应用开发者可以灵活的使用数据分片、读写分离、数据加密、影子库等功能,并且能够叠加使用。

规则配置部分与 ShardingSphere-JDBC 的 YAML 配置完全一致。 DistSQL 与 YAML 配置能够相互取代。

# 第二章 Sharding-Proxy安装

# 2.1 二进制文件安装

下载地址

https://shardingsphere.apache.org/document/5.1.1/cn/downloads/

或者

https://archive.apache.org/dist/shardingsphere/5.1.1/

解压

tar -zxvf apache-shardingsphere-5.1.1-shardingsphere-proxy-bin.tar.gz
1

创建 ext-lib目录并添加MySQL驱动包

将MySQl驱动放至解压目录中的
1

修改配置conf/server.yaml

rules:
  - !AUTHORITY
    users:
      - root@%:root
    provider:
      type: ALL_PRIVILEGES_PERMITTED

props:
  sql-show: true
1
2
3
4
5
6
7
8
9

启动ShardingSphere-Proxy

Linux 操作系统请运行 `bin/start.sh`

Windows 操作系统请运行 `bin/start.bat` 

指定端口号和配置文件目录:`bin/start.bat ${proxy_port} ${proxy_conf_directory}` 

默认端口3307
1
2
3
4
5
6
7

# 2.2 Docker安装

启动Docker容器

docker run -d \
-v /opt/server/proxy-a/conf:/opt/shardingsphere-proxy/conf \
-v /opt/server/proxy-a/ext-lib:/opt/shardingsphere-proxy/ext-lib \
-e ES_JAVA_OPTS="-Xmx256m -Xms256m -Xmn128m" \
-p 3321:3307 \
--name server-proxy-a \
apache/shardingsphere-proxy:5.1.1
1
2
3
4
5
6
7

上传MySQL驱动

将MySQl驱动上传至`/opt/server/proxy-a/ext-lib`目录
1

修改配置server.yaml

rules:
  - !AUTHORITY
    users:
      - root@%:root
    provider:
      type: ALL_PRIVILEGES_PERMITTED

props:
  sql-show: true
1
2
3
4
5
6
7
8
9

将配置文件上传至/opt/server/proxy-a/conf目录

重启容器

docker restart server-proxy-a
1

远程连接ShardingSphere-Proxy

ShardingSphere-Proxy容器中默认情况下没有mysql命令行客户端的安装,因此需要远程访问

mysql -h192.168.100.201 -P3321 -uroot -p
1
2
3

# 第三章 ShardingSphere-Proxy垂直分片

Last Updated: 10/19/2022, 8:19:50 PM