sharding-proxy 是 Sharding Sphere 家族中的第二个产品。
它是透明化的数据库代理端,提供封装了数据库二进制协议的服务端版本,用于完成对异构语言的支持。 目前先提供 MySQL / PostgreSQL 版本。
MyCat 也是这种形式的数据库代理。
1. 下载安装
从 Apache 官网下载 sharding-proxy:
将其解压到本机的某个目录下。
在 Windows 上解压时可能会出现这样的一个问题,由于文件的路径名过长,导致文件的名称在解压过程中被截断。例如,
xxx.jar
会截断成xxx.j
,甚至更短。从而导致运行 sharding-prxoy 时,它认为有些文件不存在,而启动报错。
2. 配置
sharding-proxy 是数据库代理,即它会伪装成是一个数据库,在使用 shrind-proxy 之后,我们以后是直接面对 sharding-proxy,间接使用 MySQL 。
sharding-proxy 的配置都在 conf 目录下,其下的配置主要『回答』两方面的问题:
-
作为伪装的数据库,我们需要以什么用户名和密码连上 sharding-proxy。这个『问题的答案』体现在 server.yaml 配置文件中。
authentication: users: root: password: root sharding: password: sharding authorizedSchemas: scott tom: password: 123 authorizedSchemas: xxx,yyy,zzz
-
作为伪装的数据库,sharding-proxy 中有哪些 database,这个/这些 databse 的真实为止又是在哪个 MySQL 的哪个 database 中。这个『问题的答案』体现在 config-xxx.yaml 配置文件中。
sharding-proxy 中的每一个 database 都要有一个独立的 config-xxx.yaml 配置文件。反而言之,每一个 config-xxx.xml 配置文件中配置的都是专门针对于某个 database 的相关配置。
sharding-proxy 和 sharding-jdbc 的概念一脉相承,config-xxx.yaml 配置文件中的相关配置内容和 sharding-jdbc 中的配置几乎一样。
3. 使用
配置完成后通过 start.bat / start.sh 启动 sharding-prxoy ,sharing-proxy 启动后占用 3307 端口。
使用任意一款 MySQL 客户端都可连接到 sharding-proxy,注意连接端口现在是 3307 。
连上 sharding-proxy 之后,你在 sharding-proxy 中看到的、操作到的都是逻辑库、逻辑表。
网友评论