ShardingSphereproxy 搭配 MogDB/openGauss 动态读写分离

原作者: 高云龙

  • 介绍
  • 安装部署
    • 环境准备
    • 数据库准备
    • 下载解压proxy
    • 配置文件
    • 启停 proxy
  • 动态读写分离展示
  • 问题汇总

介绍

ShardingSphere-Proxy是shardingsphere三大工具之一,定位为透明化的数据库代理端,提供封装了数据库二进制协议的服务端版本,用于完成对异构语言的支持。 目前提供 MySQL 和 PostgreSQL(兼容 openGauss 等基于 PostgreSQL 的数据库)版本,它可以使用任何兼容 MySQL/PostgreSQL 协议的访问客户端(如:MySQL Command Client, MySQL Workbench, Navicat 等)操作数据,对 DBA 更加友好。

  • 向应用程序完全透明,可直接当做 MySQL/PostgreSQL 使用;
  • 适用于任何兼容 MySQL/PostgreSQL 协议的的客户端。

ShardingSphere-Proxy 对系统库/表(如 information_schema、pg_catalog)支持有限,通过部分图形化数据库客户端连接 Proxy 时,可能客户端或 Proxy 会有错误提示。可以使用命令行客户端(mysql、psql、gsql 等)连接 Proxy 验证功能。

安装部署

本次安装部署是在centos 7.9上完成,采用PTK一键安装部署MogDB数据库,结合ZK集群,按生产数据库使用方式(cluster模式)做的部署验证。

由于MogDB来源于社区版的openGauss数据库,所以也适用ShardingSphere-proxy + openGauss

环境准备

  • must have Java JRE 8 or higher
  • MogDB 安装部署完成,且运行状态正常
  • zookeeper 集群部署完成,且运行状态正常

数据库准备

--创建用户、数据库 create user ssp password 'sspMogdb@123'; create database ssp owner ssp; --需要配置白名单,允许proxy所在机器访问数据库,配置pg_hba.conf文件 --本次proxy部署在集群内节点,PTK已经配置了白名单,所以不做单独部署