码迷,mamicode.com
首页 > 数据库 > 详细

PostgreSQL&PostGIS完全安装

时间:2017-06-10 18:24:54      阅读:217      评论:0      收藏:0      [点我收藏+]

标签:evel   div   eve   where   su -   prefix   env   tor   std   

1. 创建postgres用户和组

# groupadd -g 101 dba
# useradd -u 501 -g dba -G root -d /usr/local/pgsql postgres

2. 添加postgres用户环境变量

$ cat ~/.bash_profile
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi

# User specific environment and startup programs

export PGHOME=/usr/local/pgsql
export PGDATA=/usr/local/pgsql/data
export PATH=$PGHOME/bin:$PATH:$HOME/bin
export LD_LIBRARY_PATH=$PGHOME/lib:/lib64:/usr/lib64:/usr/local/lib64:/lib:/usr/lib:/usr/local/lib:$LD_LIBRARY_PATH

 3. 调整系统参数

# tail -n 12 /etc/sysctl.conf
vm.overcommit_memory=1
vm.overcommit_ratio=90
fs.aio-max-nr=1048576
fs.file-max= 7672460
net.ipv4.ip_local_port_range=9000 65500
net.core.rmem_default=262144
net.core.rmem_max=4194304
net.core.wmem_default=262144
net.core.wmem_max=1048586
kernel.sem= 50100 64128000 50100 1280
kernel.shmall=5242880
kernel.shmmax=12884901888

# tail -n 4 /etc/security/limits.conf
postgres soft nproc 8192
postgres hard nproc 16384
postgres soft nofile 4096
postgres hard nofile 65536

 4. 安装Python

# wget https://www.python.org/ftp/python/2.7.13/Python-2.7.13.tgz
# tar -zxf Python-2.7.13.tgz
# cd Python-2.7.13
# ./configure --enable-shared --with-distutils
# make
# make install
# /usr/local/bin/python --version
Python 2.7.13

5. 安装依赖包

# yum install -y perl-ExtUtils-Embed python-devel gcc-c++ openssl-devel readline readline-devel zlib zlib-devel openssl openssl-devel pam pam-devel libxml2 libxml2-devel libxslt libxslt-devel openldap openldap-devel libgeos-dev libproj-dev libgdal-dev xsltproc docbook-xsl docbook-xml imagemagick libmagickcore-dev dblatex tcl tcl-devel

6. 安装PostgreSQL

$ wget https://ftp.postgresql.org/pub/source/v9.5.7/postgresql-9.5.7.tar.bz2
$ tar -jxf postgresql-9.5.7.tar.bz2
$ cd postgresql-9.5.7
$ ./configure -prefix=/usr/local/pgsql --with-perl --with-tcl --with-openssl --with-pam --with-libxml --with-libxslt --with-wal-segsize=32
$ make
$ make install
$ cd contrib/
$ make && make install
$ mkdir /usr/local/pgsql/{data,arch}
$ sudo echo "su - postgres -c ‘pg_ctl start -D /usr/local/pgsql/data‘" >> /etc/rc.local
$ /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data/
$ cat /usr/local/pgsql/data/postgresql.conf | grep -v "^$" | grep -v "^#"
listen_addresses = *        # what IP address(es) to listen on;
port = 5432                # (change requires restart)
max_connections = 300            # (change requires restart)
shared_buffers = 2048MB            # min 128kB
logging_collector = on        # Enable capturing of stderr and csvlog
log_directory = pg_log        # directory where log files are written,
log_filename = postgresql-%Y-%m-%d_%H%M%S.log    # log file name pattern,
$ cat /usr/local/pgsql/data/pg_hba.conf | grep -v "^$" | grep -v "^#"
local   all             all                                     trust
host    all             all             127.0.0.1/32            trust
host    all             all             0.0.0.0/0               md5
host    all             all             ::1/128                 trust
$ pg_ctl start -W
$ psql 
psql (9.5.7)
Type "help" for help.

postgres=# select version();
                                                 version                                                  
----------------------------------------------------------------------------------------------------------
 PostgreSQL 9.5.7 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-18), 64-bit
(1 row)

 

PostgreSQL&PostGIS完全安装

标签:evel   div   eve   where   su -   prefix   env   tor   std   

原文地址:http://www.cnblogs.com/ilifeilong/p/6979288.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!