zoukankan      html  css  js  c++  java
  • postgresql源码安装

    1.下载源码

    https://ftp.postgresql.org/pub/source/

    2.上传至服务器并解压

    cd /data/software
    tar -zvxf postgresql-10.6.tar.gz

    3.编译安装

    3.1.安装配置

    cd postgresql-10.6
    ./configure --help
    # 安装依赖包
    yum install -y perl-ExtUtils-Embed readline-devel zlib-devel pam-devel libxml2-devel libxslt-devel openldap-devel  python-devel gcc-c++ openssl-devel cmake
    #./configure --prefix=/usr/local/pgsql10.6 --with-segsize=16 --with-blocksize=32 --with-wal-segsize=64 --with-wal-blocksize=64 --with-libedit-preferred --with-perl --with-python --with-openssl --with-libxml --with-libxslt --enable-thread-safety --enable-nls=en_US.UTF-8
    ./configure --prefix=/usr/local/pgsql-10.6  --with-wal-segsize=512 --with-wal-blocksize=16 --with-pgport=5432 --with-segsize=1 --with-blocksize=8 --with-libedit-preferred --with-perl --with-openssl --with-libxml  --with-libxslt --enable-thread-safety --enable-nls=en_US.UTF-8

    segsize:段尺寸,操作系统对文件的大小限制,因此一个表的文件最大不能超过文件系统规定的大小。为解决这个问题,可以将大表的文件拆分为小文件,每个文件的大小即为段设置的大小,单位为G

    blocksize:块大小,数据库IO的最小单位

    wal-segsize:日志段大小,即日志的大小

    wal-blocksize:日志块大小,日志的最小IO单位

    具体的参数可以根据实际需求修改

    3.2.编译

    make

    3.3.安装

    make install

    4.创建postgresql用户,数据目录

    useradd postgres
    cd /pgdata/
    mkdir data
    chown postgres.postgres -R /pgdata/

    设置环境变量

    # 创建连接文件,方便后期的升级
    ln -sf /usr/local/pgsql10.6/ /usr/local/pgsql
    su - postgres
    vi .bash_profile
    ###############################################
    export PGDATA=/pgdata/data
    export PGHOME=/usr/local/pgsql/
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PGHOME/lib
    export PATH=$PATH:$PGHOME/bin/
    ###############################################

    其他的程式在运行的过程中,可能会用到postgresql的库文件,但因pg并未默认安装,其库文件未在/lib或/usr/lib下,因此我们将其加入环境变量,方便其他程式查找

    5.安装扩展

    su - root
    export PATH=$PATH:/usr/local/pgsql/bin/
    cd /data/software/postgresql-10.6/contrib
    more README 
    make all
    make install

    6.初始化数据库

    su - postgres
    initdb

    7.开启数据库

  • 相关阅读:
    Leetcode 50.Pow(x,n) By Python
    Leetcode 347.前K个高频元素 By Python
    Leetcode 414.Fizz Buzz By Python
    Leetcode 237.删除链表中的节点 By Python
    Leetcode 20.有效的括号 By Python
    Leetcode 70.爬楼梯 By Python
    Leetcode 190.颠倒二进制位 By Python
    团体程序设计天梯赛 L1-034. 点赞
    Wannafly挑战赛9 C-列一列
    TZOJ Start
  • 原文地址:https://www.cnblogs.com/monkey6/p/10529439.html
Copyright © 2011-2022 走看看