文档章节

postgresql-xl使用pgbouncer连接池

Hello_Boost
 Hello_Boost
发布于 2016/01/25 21:24
字数 555
阅读 118
收藏 0
  1. 概述

       pgbouncer是PostgreSQL的一个轻量级连接池,可以给客户端提供一个统一的视图。

    pgbouncer的作用:

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

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

    pgbouncer的特点:

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

    b)可以把不同的数据库连接到一个机器上,而对客户端保持透明。

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

  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.

© 著作权归作者所有

Hello_Boost
粉丝 1
博文 14
码字总数 4803
作品 0
高级程序员
私信 提问
postgresql数据库连接池pgbouncer

前端时间看了看服务器还有多余的内存,由于数据库和程序都在一个服务器上,就想看看有什么提升并发的方法。试用了下pgbouncer ,记录下。 1.源码安装: wget https://github.com/downloads/...

从前
2013/06/13
0
0
安装配置PgBouncer for PostgreSQL

PgBouncer连接池来自于PostgreSQL社区,它可以为多个数据库管理连接池,并且这些数据库可以位于不同的PostgreSQL后端。PgBouncer会为每一种数据库用户与数据库的组合建立一个池。一个被池化的...

candon123
2018/12/13
0
0
PostgresPro buildin pool(内置连接池)版本 原理与测试

标签 PostgreSQL , 内置连接池 , pgbouncer , postgrespro 背景 PostgreSQL 与Oracle dedicate server 一样采用了线程模式,在连接数非常多时,性能下降会比较严重。 通常社区用户的做法是使...

德哥
2018/07/28
0
0
PostgreSQL连接池pgbouncer的使用

今天在虚拟机上整理了下pgbouncer的安装使用过程,记录如下。 说明:pgbouncer是一款轻量级针对postgresql的数据库连接工具,可以对客户端的连接做限制,防止恶意连接,另外也可以减少数据库...

kenyon_君羊
2012/08/21
0
10
postgres和MYSQL的测试,呵呵。

Comparing PostgreSQL 9.1 vs. MySQL 5.6 using Drupal 7.x Its tough to come across much information about running Drupal on PostgreSQL I find beisdes the basics of installing Drup......

Raynor1
2013/06/21
1K
10

没有更多内容

加载失败,请刷新页面

加载更多

GMTC2019|闲鱼-基于Flutter的架构演进与创新

作者:闲鱼技术-宗心 2012年应届毕业加入阿里巴巴,主导了闲鱼基于Flutter的新混合架构,同时推进了Flutter在闲鱼各业务线的落地。未来将持续关注终端技术的演变及趋势 Flutter的优势与挑战 ...

阿里云云栖社区
11分钟前
2
0
迪蒙人工智能共享停车吸引国际关注

  近来,华为创始人任正非多次提及人工智能。即便在华为生死攸关的关键时刻,任正非依旧不忘强调教育的重要性,“如果不重视教育,实际上我们会重返贫穷的,因为这个社会,最终是要走向人工智能的...

琴殇的
12分钟前
0
0
iOS开发之EventKitUI框架的应用

iOS开发之EventKitUI框架的应用 前面博客,有介绍EventKit这个框架的使用,使用EventKit可以与系统的日历和提醒应用进行交互,读写用户的日程事件。EventKitUI,顾名思义,其实基于EventKit框...

珲少
20分钟前
0
0
从MySQL源码看其网络IO模型

从MySQL源码看其网络IO模型 前言 MySQL是当今最流行的开源数据库,阅读其源码是一件大有裨益的事情(虽然其代码感觉比较凌乱)。而笔者阅读一个Server源码的习惯就是先从其网络IO模型看起。于是...

无毁的湖光-Al
21分钟前
0
0
WebService学习笔记

什么是Web Services? Web Services 是应用程序组件 Web Services 使用开放协议进行通信 Web Services 是独立的(self-contained)并可自我描述 Web Services 可通过使用UDDI来发现 Web Serv...

榴莲黑芝麻糊
37分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部