这篇文章将为大家详细讲解有关Linux下PostgreSQL如何源码安装,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
 
1、首先安装依赖包,避免在安装过程中出现问题
 
shell> yum install gcc gcc-c++ automake autoconf libtool make
shell> yum install readline-devel
shell> yum install zlib-devel
2、创建postgre用户及用户组
 
shell> groupadd postgre
shell> useradd -g postgre postgre   
shell> passwd postgre                #修改密码
shell> id postgre
uid=500(postgre) gid=501(postgre) 组=501(postgre)
3、编译安装postgre
 
shell> tar zxvf postgresql-9.3.6.tar.gz
shell> cd postgresql-9.3.6
shell> ./configure –prefix=/db/pgsql
shell> make && make install  
PostgreSQL installation complete.
4、设置数据库目录权限并初始化数据库
 
shell> mkdir -p /db/pgsql/data
shell> chown -R postgre.postgre /db/pgsql/
shell> cp contrib/start-scripts/linux /etc/rc.d/init.d/postgresql
shell> su – postgre
 
# 初始化数据库
shell> /db/pgsql/bin/initdb -D /db/pgsql/data/
The files belonging to this database system will be owned by user "postgre".
This user must also own the server process.
 
The database cluster will be initialized with locale "zh_CN.UTF-8".
The default database encoding has accordingly been set to "UTF8".
initdb: could not find suitable text search configuration for locale "zh_CN.UTF-8"
The default text search configuration will be set to "simple".
 
Data page checksums are disabled.
 
fixing permissions on existing directory /db/pgsql/data … ok
creating subdirectories … ok
selecting default max_connections … 100
selecting default shared_buffers … 128MB
creating configuration files … ok
creating template1 database in /db/pgsql/data/base/1 … ok
initializing pg_authid … ok
initializing dependencies … ok
creating system views … ok
loading system objects' descriptions … ok
creating collations … ok
creating conversions … ok
creating dictionaries … ok
setting privileges on built-in objects … ok
creating information schema … ok
loading PL/pgSQL server-side language … ok
vacuuming database template1 … ok
copying template1 to template0 … ok
copying template1 to postgres … 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:
 
    /db/pgsql/bin/postgres -D /db/pgsql/data/
or
    /db/pgsql/bin/pg_ctl -D /db/pgsql/data/ -l logfile start
5、设置环境变量
 
shell> vi .bash_profile
==================================================================
PATH=$PATH:$HOME/bin:/db/pgsql/bin
export PGDATA=/db/pgsql/data
export PGHOME=/db/pgsql
export LANG=zh_CN.UTF-8
export PGPORT=5432
export PATH
==================================================================
shell> source .bash_profile
6、开启postgre服务
 
shell> pg_ctl -D /db/pgsql/data/ -l /db/pgsql/log/logfile start
server starting
 
shell> tail -f /db/pgsql/logfile
LOG:  database system was shut down at 2015-04-20 17:59:36 CST
LOG:  database system is ready to accept connections
LOG:  autovacuum launcher started
7、测试连接数据库
 
shell> createdb mydb
shell> psql -h 127.0.0.1 -p 5432 -U postgre -W mydb
Password for user postgre:
psql (9.3.6)
Type "help" for help.
 
mydb=#
 
# 显示当前数据库
mydb=# \l
                                List of databases
   Name    |  Owner  | Encoding |   Collate   |    Ctype    |  Access privileges  
———–+———+———-+————-+————-+———————
 mydb      | postgre | UTF8     | zh_CN.UTF-8 | zh_CN.UTF-8 |
 postgres  | postgre | UTF8     | zh_CN.UTF-8 | zh_CN.UTF-8 |
 template0 | postgre | UTF8     | zh_CN.UTF-8 | zh_CN.UTF-8 | =c/postgre         +
           |         |          |             |             | postgre=CTc/postgre
 template1 | postgre | UTF8     | zh_CN.UTF-8 | zh_CN.UTF-8 | =c/postgre         +
           |         |          |             |             | postgre=CTc/postgre
(4 rows)
 
# 退出命令行
mydb=# \q
关于“Linux下PostgreSQL如何源码安装”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

dawei

【声明】:站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。