1.安装必要的基本软件

yum install -y gcc.x86_64 glibc.x86_64 glibc-devel.x86_64 vim-enhanced.x86_64 gcc-java apr apr-devel openssl openssl-devel libgcc.x86_64 docbook-dtds docbook-style-xsl fop libxslt perl-Module-Install.noarch zlib-devel.x86_64 readline-devel.x86_64

2.下载postgresql9.5的sourcecode

curl -O https://ftp.postgresql.org/pub/source/v9.5.1/postgresql-9.5.1.tar.gz

3.创建postgres用户(一定要创建,不然root用户不能启动数据库)

adduser postgres

4.解压编译安装

#解压
tar -zxvf postgresql-9.5.1.tar.gz
#进入解压目录
cd postgresql-9.5.1
#配置prefix是程序放哪里
./configure --prefix=/home/pgdb --enable-thread-safety
#编译&安装
make
make install

5.设置权限

#把程序目录全部赋权给postgres用户
chown -R postgres.postgres /home/pgdb/

注意********以下就切换到postgres用户了*********(上面都是root用户操作)

6.设置环境变量(可以不设,设定的话,就不用打data目录了)

编辑用户目录下.bash_profile文件,主要是设置PGDATA变量

#给个参考
PGHOME=/home/pgdb
export PGHOME
PGDATA=$PGHOME/data
export PGDATA
PATH=$PATH:$HOME/.local/bin:$HOME/bin:$PGHOME/bin
export PATH

7.使用initdb初始化数据库(在$PGHOME/bin下,设了环境变量就能直接运行了)

initdb -D /home/pgdb/data

8.启动数据库

#注意这个logfile是日志文件,需要指定
pg_ctl start -l <logfile>

 9.设置用户postgres的密码

#使用postgres账户进入控制台(现在密码应该是空)
psql -U postgres postgres=# \password
Enter new password: <123456>
Enter it again: <123456> 把密码设置成123456 可以使用\q命令退出控制台

 10.设定监听

PostgreSQ数据库为了安全,它不会监听除本地以外的所有连接请求,所以如果要远程访问,那么一定要....

有2个文件需要修改,都在PGDATA目录下

#1.postgresql.conf
#找到其中listen_addresses配置那一行,注释掉localhost,然后增加以下行
listen_addresses = '*'
#最大连接数(可以不调)
max_connections = 500
#2.pg_hba.conf
#找到host all all 127.0.0.1/32 trust这一行
#在下面添加你需要访问数据库的网段
host all all 172.16.0.0/16 md5

===

大功告成,可以用连接工具去连接了!

CentOS7源码编译安装Postgresql9.5的更多相关文章

  1. Centos7源码编译安装PHP7.2(生产环境)

    安装PHP依赖包,否则在编译的过程中可能会出现各种报错 # Centos 安装epel-release源并将系统包更新到最新版本 $ yum install epel-release-y $ yum ...

  2. centos7源码编译安装lamp/lnmp

    centos7源码编译安装lamp/lnmp 进程:是包工头(相当于是个门,只管开门关门,不管门内的事儿) 线程:是各种工种(cpu调度的是线程) 进程 是一件事情, 线程 是 同一个时间范围内 同时 ...

  3. centos7 源码编译安装TensorFlow CPU 版本

    一.前言 我们都知道,普通使用pip安装的TensorFlow是万金油版本,当你运行的时候,会提示你不是当前电脑中最优的版本,特别是CPU版本,没有使用指令集优化会让TensorFlow用起来更慢. ...

  4. Centos7源码编译安装mysql8

    前面介绍了很多关于mysql的文章,下面主要介绍一下mysql8的源码编译安装 一 基本环境 [root@CentOS-7-x86-64-Minimal-1810 ~]# cd /usr/local/ ...

  5. CentOS7 源码编译安装Nginx

    源码编译安装nginx     1.下载nginx源码包(这里以nginx-1.18.0为例) wget http://nginx.org/download/nginx-1.18.0.tar.gz 2 ...

  6. centos7源码编译安装Subversion 1.9.5

    svn是Subversion的简称,是一个开放源代码的版本控制系统.svn有两种运行方式:1.独立服务器(svn://xxx.xxx/xxx) 2.借助apache(http://svn.xxx.xx ...

  7. centos7 源码编译安装 php

    准备工作 下载 PHP 源码包并解压 $ wget https://www.php.net/distributions/php-7.2.19.tar.bz2 $ yum -y install bzip ...

  8. centos7 源码编译安装 nginx

    安装步骤 下载 nginx 源码包 官网 $ wget http://nginx.org/download/nginx-1.16.0.tar.gz 解压 nginx 压缩包 $ tar -zxvf n ...

  9. CentOS7 源码编译安装Tengine

    简介 Tengine是由淘宝网发起的Web服务器项目.它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性.它的目的是打造一个高效.安全的Web平台. 发展 Tengine的性能和 ...

随机推荐

  1. Python 中的@修饰符作用

    在Python 2.4以上的的函数中偶尔会看到函数定义的上一行有@functionName的修饰,这一下这个语法细节,其实这有点像C语言带参数的宏操作,解释器读到这样的修饰之后,会先解析@后的内容,直 ...

  2. [转] ImageView的android:adjustViewBounds属性

    原文链接:http://blog.csdn.net/pingchuanyang/article/details/9252689   取值为true时: Adjust the ImageView's b ...

  3. .NET程序员转Java不完全指南

    首先要声明一点,“转”字并不包含那种语言牛B的意思. 然后要声明一点,“转”字仅限于企业应用开发的语言的转. 假设各种数据库切换无代沟, 假设各种WEB客户端技术无障碍. 1.搭建环境,IDE主流是e ...

  4. CDN -- 集合

    weui https://cdnjs.cloudflare.com/ajax/libs/weui/0.4.3/style/weui.min.css 百度静态资源库 http://cdn.code.ba ...

  5. UML大战需求分析——阅读笔记02

    类图是理解面向对象思想的强有力工具,也是业务概念模型分析中最常用的一种UML图.对开发人员来说,并不是对每一个业务流程都很熟练,在客户那里传达过来的需求资料中,有很多术语会把思绪搞晕,他们之间错综复杂 ...

  6. Android 笔记 day4

    单元测试

  7. devpress 的gridview 控件的行拖拽 z

    首先,添加引用:using DevExpress.XtraGrid.Views.Grid.ViewInfo;               gridControl1.AllowDrop = true; ...

  8. BestCoder Round #85(ZOJ1569尚未验证)

    A题 子序列和啊,就要想到前缀和的差.这个转换一定要!记着!那么i到j的一段子序列和Sij%m ==  0就等价于(Sj-Si-1)%m == 0 了,那么什么意思呢?就是如果有两段前缀和%m的模是一 ...

  9. 00 MySQL

    1数据库 1.1名词解释      DB:数据库Database,用于存放数据仓库      DBMS:数据库管理系统 DataBase Management System,管理数据库      ta ...

  10. Objective-C 中self.与_访问方式的区别

    Objective-C中属性self.a与_a访问的区别: 在OC中我们可以通过指令@property定义属性. OC对属性封装了许多方法,同时也会自动实现一些方法,相比实例变量,感觉更加面向对象些. ...