• Redhat 7.2 编译安装PostgreSQL 10


    1.环境说明

    CentOS7.2
    postgresql10.4
    

    2.下载

    postgresql的官方地址
     https://www.postgresql.org/ftp/source/
    
    在下载列表中根据需求选择版本10.4,如下图:

    进入子目录后,可以看到文件列表:

    选择postgresql-10.4.tar.gz,下载完成后上传至RedHat服务器的指定目录即可。

    3.配置编译安装

    tar -zxvf postgresql-10.4.tar.gz
    
    cd postgresql-10.4
    
    ./configure --prefix=/usr/local/postgresql
    

    编译postgres,发现提示缺少readline库,如下图:

    yum search readline
    
    发现一个readline-devel包
    
    yum install readline-devel
    
    重新配置
    ./configure --prefix=/usr/local/postgresq
    
    没报错 编译安装
    make && make install
    

    4.配置用户权限与环境变量

    useradd postgres
    
    chown -R postgres:postgres /usr/local/postgresql/
    
    su - postgres
    
    vi ~/.bash_profile
    
    PGHOME=/usr/local/postgresql
    export PGHOME
    
    PGDATA=/usr/local/postgresql/data
    export PGDATA
    
    PATH=$PATH:$HOME/.local/bin:$HOME/bin:$PGHOME/bin
    
    修改完成后可以通过source ./.bash_profile使其立即生效
    source ~/.bash_profile
    

    5.初始化数据库

    ###在使用initdb进行初始化的同时我们可以指定参数来同时进行一些初始化工作,例如指定pgdata(postgresql数据目录)、
    指定encoding(编码)、指定数据库超级用户的用户名和密码等等,在最后面我标记出的这段话指出了如果data目录没有指定,
    则会默认使用环境变量中的PGDATA,由于之前我们刚刚设置了PGDATA环境变量,所以此处我们也就无需再额外指定,最后执行
    初始化命令即可:
    
    initdb
    

    初始化完成后,在postgresql的目录可以看到生成的数据目录data以及该目录的相关数据和配置文件:

    #base目录是表空间目录
    #global目录是相关全局变量的目录
    #pg_hba.conf:访问控制配置(127.0.0.1改为信任的客户端ip网段使其可以远程访问)
    #postgresql.conf:postgresql主配置文件(listen_address=localhost改为星号使其监听整个网络)
    

    6.修改配置文件

    将pg_hba.conf的ip地址修改为0.0.0.0/0,而加密方式改为md5,表示需要密码访问:

    修改 postgresql.conf 中的listen_address使其监听整个网络:

    7.关闭防火墙

    8.启动连接数据库

    pg_ctl start -l /usr/local/postgresql/log/pg_server.log
    
    psql
    
    ps -ef|grep postgres
    

  • 相关阅读:
    使用Microsoft URL Rewrite Module for IIS 7.0修改WEB.CONFIG即可实现*.HTML伪静态 无需修改应用程序映射
    我的第二个智能手机 HKC G801 严重质量问题 USB接口坏后解决办法
    JQuery的跨域方法 可跨新浪、腾讯等任意网站
    IIS7下使用MSDNURLRewriting.msi开源组件的设置
    面向对象编程,真离不开设计模式?
    jQuery 的filter(),not(),split()用法
    2008年总结
    程序中 同步和异步的经典解释 (一听就懂)
    2009年元旦前祝福 开心一下
    到底什么是SOA?
  • 原文地址:https://www.cnblogs.com/chinesern/p/9309653.html
Copyright © 2020-2023  润新知