postgresql 在linux上的源码安装

Posted 与非朋仔

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了postgresql 在linux上的源码安装相关的知识,希望对你有一定的参考价值。

http://my.oschina.net/hippora/blog/375292

下载源码并解压

[root@fnddb ~]# wget https://ftp.postgresql.org/pub/source/v9.4.0/postgresql-9.4.0.tar.bz2
[root@fnddb ~]# tar -xjvf postgresql-9.4.0.tar.bz2 
[root@fnddb ~]# cd postgresql-9.4.0

开始编译安装

[[email protected] postgresql-9.4.0]# ./configure 
……
checking for library containing shmget... none required
checking for library containing readline... no
configure: error: readline library not found
If you have readline already installed, see config.log for details on the
failure.  It is possible the compiler isn‘t looking in the proper directory.
Use --without-readline to disable readline support.

按照错误提示依次安装依赖包

[[email protected] postgresql-9.4.0]# yum install readline-devel
[[email protected] postgresql-9.4.0]# yum install zlib-devel
...

继续

[root@fnddb postgresql-9.4.0]# ./configure
[root@fnddb postgresql-9.4.0]# make
……
All of PostgreSQL successfully made. Ready to install.
[root@fnddb postgresql-9.4.0]# make install
……
PostgreSQL installation complete.

添加用户

[root@fnddb postgresql-9.4.0]# useradd postgres
[root@fnddb postgresql-9.4.0]# passwd postgres
Changing password for user postgres.
New password: 
BAD PASSWORD: it is based on a dictionary word
Retype new password: 
passwd: all authentication tokens updated successfully.

建立好database cluster目标文件夹

[root@fnddb postgresql-9.4.0]# mkdir /var/lib/pgsql/data -p
[root@fnddb postgresql-9.4.0]# chown -R postgres /var/lib/pgsql

环境变量设置

[root@fnddb postgresql-9.4.0]# su - postgres
[postgres@fnddb ~]$ vi .bash_profile 
…
# postgres
PGDATA=/var/lib/pgsql/data
PATH=/usr/local/pgsql/bin:$PATH
export PGDATA PATH

[postgres@fnddb ~]$ . .bash_profile 

创建database cluster

[[email protected] ~]$ pg_ctl initdb
......

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:

    /usr/local/pgsql/bin/postgres -D /var/lib/pgsql/data
or
    /usr/local/pgsql/bin/pg_ctl -D /var/lib/pgsql/data -l logfile start

启动数据库实例

设置好PGDATA环境变量后,可以不带-D选项

[[email protected] ~]$ pg_ctl start -l /var/lib/pgsql/pgsql.log
server starting

关闭数据库实例

[[email protected] ~]$ pg_ctl stop
waiting for server to shut down.... done
server stopped

开机自动启动设置

[[email protected] postgresql-9.4.0]# vi /etc/rc.local
…
su - c ‘/usr/local/pgsql/bin/pg_ctl start -D /var/lib/pgsql/data -l /var/lib/pgsql/pgsql.log‘

以上是关于postgresql 在linux上的源码安装的主要内容,如果未能解决你的问题,请参考以下文章

Linux CentOS 7 安装PostgreSQL 9.5(源码编译)

在麒麟linux上源码安装Postgresql12.5

在麒麟Linux源码编译安装PostGIS

Centos7.6 PostgreSQL 源码编译安装

Linux postgis升级(卸载)

Postgresql源码安装