postgresql-xl使用pgbouncer链接池

  1. 概述前端

       pgbouncer是PostgreSQL的一个轻量级链接池,能够给客户端提供一个统一的视图。node

    pgbouncer的做用:git

    a)pgbouncer能够在后端数据库和前端应用间简历链接的桥梁,由pgbouncer去处理和后端的链接关系。github

    b)对客户端的链接进行限制,防止过多的恶意链接。sql

    pgbouncer的特色:数据库

    a)内存消耗低。(默认2k/链接)vim

    b)能够把不一样的数据库链接到一个机器上,而对客户端保持透明。后端

    c)支持在线的重行配置而无需重启。bash

  2. 需求服务器

        postgresql-xl在架构上,coordiantor节点具备链接池做用,可是在多个coordiantor节点的时候,须要配置一个

    管理多个coordinator节点的链接池。考虑到只须要要简单的链接池功能,因此选择pgbouncer这种轻量级的链接池

    相对比较合适。

  3. 背景

    服务器配置

    10.0.1.13 gtm

    10.0.1.14 dbnode01

    10.0.1.15 dbnode02

    逻辑节点配置

    gtm        gtm节点

    dbnode01  1coordinator节点,2datanode节点

    dbnode02  1coordinator节点,2datanode节点

    环境

    CentOS7.1

    postgresql-xl9.2

  4. 编译安装

    依赖包安装

    yum install –y libevent-devel

    若是yum不行,直接下载libevent包,编译安装便可。

    源码编译安装

    下载源码包,目前最新版本为1.7

    https://pgbouncer.github.io/downloads/files/1.7/pgbouncer-1.7.tar.gz

    解压

    tar xvf pgbouncer-1.7.tar.gz

    ./configure

    make & make install

    配置环境变量

    vim .bashrc

    增长pgbouncer目录

    export PATH=/usr/local/pgbouncer/bin:$PATH

    source .bashrc

  5. 配置

    pgbouncer.ini

    [database]

    postgres = host=10.0.1.14 port=10010 user=postgres dbname=postgres

    postgres = host=10.0.1.15 port=10020 user=postgres dbname=postgres
    [pgbouncer]

    logfile = /home/postgres/pgbouncer/pgbouncer.log

    pidfile = /home/postgres/pgbouncer/pgbouncer.pid

    listen_addr = 127.0.0.1

    listen_port = 6432

    auth_file = /home/postgres/pgbouncer/userlist.txt

    userlist.txt

    用户密码配置文件,测试使用明文,能够使用md5加密

    增长:

    “postgres” ““

    由于自己postgresql的用户postgres没有使用密码,因此能够直接用" ",在用户名和密码中间须要使用一个空格。

  6. 测试

    链接测试

    psql -h 127.0.0.1 -p 6432 -U postgres postgres

    建立表

    create table t1(f1 int);

    \dt

    insert记录

    insert into t1 values(1);

    insert into t1 values(22);

    查看insert数据

    select * from t1;

    数据传输状况


  7. 7.

相关文章
相关标签/搜索