2018年(273)
分类: Mysql/postgreSQL
2018-07-03 15:27:37
PostgreSQL分布式架构之——PL/Proxy
PL/Proxy是一款能在PostgreSQL数据库实现数据库水平拆分的软件;可以理解分布式架构(shared nothing);但是不是真正的分布式数据库软件;也是一款能在PostgreSQL数据库实现SQL语言复制(replication)
分布式架构图如下:
1.2 PL/Proxy集群配置
PL/Proxy既能配置成“CONNECT”模式又能配置成“CLUSTER”模式
在"CONNECT"模式中;PL/Proxy直接把请求路由(run on n)到指定的数据库。
在"CLUSTER"模式中;PL/Proxy可以支持数据水平分区,即shared nothing。也可以实现SQL语言复制(run on all)。
在配置“CLUSTER”模式有两种方式:
集群configuration API
SQL/MED
1.3 PL/Proxy特性介绍
PL/Proxy把需要对数据库SQL访问转换为对PostgreSQL函数调用。
PL/Proxy后端数据库节点数必须是2的N次方。
执行“source /home/postgres/.bashrc”加载环境变量;目的确保来自postgresql bin目录的pgconfig在您的路径中
tar -zxvf plproxy-2.7.tar.gz
cd plproxy-2.7
source /home/postgres/.bashrc
make
make install
2.2 创建PL/Proxy扩展
在这里我选“proxy”数据库作为路由代理数据库。
复制代码
[postgres@Postgres201 ~]$ psql
psql (9.6.0)
Type "help" for help.
postgres=# create database proxy;
CREATE DATABASE
postgres=# c proxy
You are now connected to database "proxy" as user "postgres".
proxy=# create extension plproxy;
CREATE EXTENSION
proxy=# dx