1.准备安装源

下载地址:https://www.postgresql.org/ftp/source/

下载并解压。

2.软件编译安装

配置、检查安装环境

./configure
--prefix=/opt/postgre94
--with-pgport=5432
--with-perl
--with-tcl
--with-python
--with-openssl
--with-pam
--without-ldap
--with-libxml
--with-libxslt
--enable-thread-safety
--with-wal-blocksize=16
--with-blocksize=16
--enable-dtrace
--enable-debug

成功后,方可进入下一步。遇到问题参考[configure遇到的问题]

编译安装

gmake world
gmake check-world (这个需要使用普通用户执行,可选,耗时较长)
gmake install-world

3.配置数据库

内核参数配置

# vi /etc/sysctl.conf #追加下面内容
kernel.shmmni = 4096
kernel.sem = 50100 64128000 50100 1280
fs.file-max = 7672460
net.ipv4.ip_local_port_range = 9000 65000
net.core.rmem_default = 1048576
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 104857
# sysctl -p #使配置成效

用户配置

# useradd postgres
# passwd postgres
# su - postgres
> vi .bash_profile #追加下面内容
export PGPORT=5432
export PGDATA=/pgdata/pg_root
export LANG=en_US.utf8
export PGHOME=/opt/postgre94
export LD_LIBRARY_PATH=$PGHOME/lib:/lib64:/usr/lib64:/usr/local/lib64:/lib:/usr/lib:/usr/local/lib:$LD_LIBRARY_PATH
export PATH=$PGHOME/bin:$PATH:.
export MANPATH=$PGHOME/share/man:$MANPATH
export PGUSER=postgres
export PGHOST=$PGDATA

初始化数据库(配置一个数据库实例)

# su - postgres
> initdb -D $PGDATA -E UTF8 --locale=C -U postgres -W -U 为指定管理员用户
-W 输入管理员密码
-D 数据库目录

配置数据库访问权限

# vi $PGDATA/pg_hba.conf
host all all 192.168.25.0/24 md5
# vi $PGDATA/postgresql.conf
listen_addresses = '*'

如果要在外网访问数据库,需要关闭防火墙或者配置iptables,参见Linux>配置iptables

4.基本操作

起停服务

> pg_ctl start/stop -D PGDATA

查看运行情况

#监听端口情况
> netstat -auntp | grep 5432
#进程情况
> ps -ef | grep postgres

连接数据库

> psql -h localhost postgres
postgres=# \s #查看数据库

5.同一主机多个postgresql数据库

之前的第2步编译和安装,安装的是postgresql这个软件,里面主要是postgresql软件的可执行文件,比如:初始化数据库、恢复数据库和psql等。

如果需要在同一主机上同时跑多个数据库实例,只需要再配置用户,初始化数据库及配置就可,注意的是每个实例监听的端口应该都不一样。

postgreSQL在Centos6下编译安装的更多相关文章

  1. CentOS6下编译安装Python2.7.6方法

    关于在CentOS6下编译安装Python2.7.6的方法非常的多了,小编以前也介绍过相关的文章了,下面一聚教程小编再来为各位介绍一下吧,希望文章能帮助到各位.   CentOS下面Python在升级 ...

  2. Centos6下编译安装gcc6.4.0

    Centos6自带的gcc4.4.7不支持c++11, 于是编译安装最新版的gcc wget https://gmplib.org/download/gmp/gmp-6.1.2.tar.xz .tar ...

  3. CentOS6 下编译安装 MySQL 5.6.26

    CentOS6下通过yum安装的MySQL是5.1版的,比较老,所以就想通过源代码安装高版本的5.6.26. 一:卸载旧版本 使用下面的命令检查是否安装有MySQL Server rpm -qa | ...

  4. centos6.7下编译安装lnmp

    很多步骤不说明了,请参照本人的centos6.7下编译安装lamp,这次的架构是nginx+php-fpm一台服务器,mysql一台服务器 (1)首先编译安装nginx: 操作命令: yum -y g ...

  5. centos6.7下 编译安装MySQL5.7

    centos6.7下编译安装MySQL5.7 准备工作 #-----依赖包及MySQL和boost安装包----- #yum包安装: shell> yum -y install gcc-c++ ...

  6. Linux(CentOS6.5)下编译安装PHP5.6.22时报错”configure: error: ZLIB extension requires gzgets in zlib”的解决方式(确定已经编译安装Zlib,并已经指定Zlib路径)

    本文地址http://comexchan.cnblogs.com/,作者Comex Chan,尊重知识产权,转载请注明出处,谢谢!   今天在CentOS6.5下编译安装PHP时,一直报错 confi ...

  7. Mac OSX下编译安装PostgreSQL

    原先使用的是官方提供的安装包,可是安装包会创建postgre这个用户.在登陆界面看的有点不爽,搜索了半天居然没有找到怎样在osx下编译安装的教程,并且假设是依照官方文档的编译安装办法一定会让你崩溃,本 ...

  8. CentOS6.5_64bit下编译安装MySQL-5.6.23

    转载请注明出处:http://blog.csdn.net/guoyjoe/article/details/44785511 ************************************** ...

  9. CentOS6.5下编译安装LAMP环境

    LAMP(Linux-Apache-MySQL-PHP)网站架构是目前国际流行的Web框架.该框架能够满足大流量.大并发量的网站需求:当然.也可以直接使用高性能的服务器.高性能的负载均衡硬件以及CDN ...

随机推荐

  1. iOS自己定义返回button(不影响返回手势)

    此方法能够自己定义返回button,且不影响返回手势. 新方法: self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] in ...

  2. Hdu2111

    <span style="color:#6600cc;">/* J - Saving HDU Time Limit:1000MS Memory Limit:32768K ...

  3. Java 中 modifer &#39;public&#39; is reduntant for interface methods

    http://androidren.com/index.php?qa=322&qa_1=java-%E4%B8%AD-modifer-public-is-reduntant-for-inter ...

  4. SpringMVC_2

    web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi=" ...

  5. (十七)LU分解

    #encoding=utf-8 import numpy as np # 输入数据 # a用来记录x的系数 a=[[2.0,2.0,3.0],[4.0,7.0,7.0],[-2.0,4.0,5.0]] ...

  6. java7中使用透明时与输入法冲突

    在Stackoverflow的这找到了答案,需要设置一下系统参数: static { System.setProperty("sun.java2d.noddraw", " ...

  7. linux CentOS中创建用户 无密码登录

    首先点击左上角的 “应用程序” -> “系统工具” -> “终端”,首先在终端中输入 su ,按回车,输入 root 密码以 root 用户登录,接着执行命令创建新用户 hadoop: 接 ...

  8. bzoj 1826 缓存交换

    题目大意: 一些数,需要将他们依次取入一个集合中 集合的容量有限 若该数已经在集合中则不用再取 每次取的时候可以将集合中与元素替换为另一个,也可以不换,直接加入前提是不超过集合容量 求最后最小的取数次 ...

  9. SYSUCPC2017 online round La La string 应用manacher算法

    manacher算法给出一个字符串中 以每个位置为对称中心的回文串长度,但是大部分时候我们只需要知道以每个位置为起点的回文串长度,感觉有点浪费. 那么来看看这个不难也不太简单的题目 第一步,我们要想办 ...

  10. JeePlus:代码结构

    ylbtech-JeePlus:代码结构 1.返回顶部 1. 代码结构 1.文件结构 1.1.源码目录 src/main/javacom.jeeplus Jeeplus目录录├ common 公共模块 ...