RHEL7.2+PostgreSQL9.6.1
Requirements softwares
1.GNU make version 3.80 or newer is required
[root@rhel7 ~]# make --version
GNU Make 3.82
Built for x86_64-redhat-linux-gnu
2.You need an ISO/ANSI C compiler (at least C89-compliant). Recent versions of GCC are recommended
[root@rhel7 ~]# gcc --version
gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-4)
3. tar is required to unpack the source distribution, in addition to either gzip or bzip2.
4.The GNU Readline library is used by default.
readline
readline-devel
libedit
Optional
perl 5.8 or later
python
Kerberos
OpenSSL
OpenLDAP
and/or PAM
Flex 2.5.31 or later
Bison 1.875 or later
useradd pguser
su - pguser
tar -zxvf postgresql-9.6.1.tar.gz
Install
cd postgresql-9.6.1
./configure
默认安装目录/usr/local/pgsql,可以使用--prefix=path进行修改,./configure --help
make
The last line displayed should be:
All of PostgreSQL successfully made. Ready to install.
su (使用root安装)
make install
PostgreSQL installation complete.
Set the environment variables for pguser
mkdir /usr/local/pgsql/data #PostgreSQL数据存储目录
chown pguser:pguser /usr/local/pgsql/data
export LD_LIBRARY_PATH=/usr/local/pgsql/lib
export PG_HOME=/usr/local/pgsql
export PATH=$PG_HOME/bin/:$PATH
export PGDATA=/usr/local/pgsql/data
Initilize the DBServer
(使用pguser)
[pguser@rhel7 ~]$ initdb -D /usr/local/pgsql/data The files belonging to this database system will be owned by user "pguser". This user must also own the server process. The database cluster will be initialized with locale "en_US.UTF-8". The default database encoding has accordingly been set to "UTF8". The default text search configuration will be set to "english". Data page checksums are disabled. fixing permissions on existing directory /usr/local/pgsql/data ... ok creating subdirectories ... ok selecting default max_connections ... 100 selecting default shared_buffers ... 128MB selecting dynamic shared memory implementation ... posix creating configuration files ... ok running bootstrap script ... ok performing post-bootstrap initialization ... ok syncing data to disk ... ok WARNING: enabling "trust" authentication for local connections You can change this by editing pg_hba.conf or using the option -A, or --auth-local and --auth-host, the next time you run initdb. Success. You can now start the database server using: pg_ctl -D /usr/local/pgsql/data -l logfile start
Start the DBServer
[pguser@rhel7 ~]$ postgres -D /usr/local/pgsql/data >logfile 2>&1 & [1] 13799 [pguser@rhel7 ~]$ ps -ef |grep postgre pguser 13799 4377 0 12:37 pts/0 00:00:00 postgres -D /usr/local/pgsql/data pguser 13801 13799 0 12:37 ? 00:00:00 postgres: checkpointer process pguser 13802 13799 0 12:37 ? 00:00:00 postgres: writer process pguser 13803 13799 0 12:37 ? 00:00:00 postgres: wal writer process pguser 13804 13799 0 12:37 ? 00:00:00 postgres: autovacuum launcher process pguser 13805 13799 0 12:37 ? 00:00:00 postgres: stats collector process pguser 13807 4377 0 12:37 pts/0 00:00:00 grep --color=auto postgre
连接测试
[pguser@rhel7 ~]$ psql --list List of databases Name | Owner | Encoding | Collate | Ctype | Access privileges -----------+--------+----------+-------------+-------------+------------------- postgres | pguser | UTF8 | en_US.UTF-8 | en_US.UTF-8 | template0 | pguser | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/pguser + | | | | | pguser=CTc/pguser template1 | pguser | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/pguser + | | | | | pguser=CTc/pguser (3 rows) [pguser@rhel7 ~]$ psql postgres psql (9.6.1) Type "help" for help. postgres=# select version(); version --------------------------------------------------------------------------------------------------------- PostgreSQL 9.6.1 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-4), 64-bit (1 row) postgres=# select current_date; date ------------ 2016-12-01 (1 row) postgres=# \q
本文出自 “DBA Fighting!” 博客,请务必保留此出处http://hbxztc.blog.51cto.com/1587495/1878425
原文地址:http://hbxztc.blog.51cto.com/1587495/1878425