CentOS 下 PostgreSQL 的编译安装

一、PostgreSQL简介

​ PostgreSQL 数据库是一个自由的对象-关系型数据库服务器(数据库管理系统),它提供了相对其他开源数据库系统(MySQL、Firebird)和专有系统(Oracle、Sybase、IBM 以及微软的 Microsoft SQL Server)之外的另一种选择。
PostgreSQL强壮的一个特点就是源于它的架构。和其他的商业数据库一样,PostgreSQL可以用于客户与服务器之间的环境(C/S)。这对于用户和开发人员有很多好处。PostgreSQL安装的核心就是数据库服务端进程。它允许在一个独立的服务器上。需要访问存储在数据库中的数据的应用程序必须通过数据库进程。这些客户端无法直接访问数据,即使他们与服务程序在同一个机器上。

二、源代码安装

2.1环境库安装

​ 首先从网站上下载 PostgreSQL 数据库源代码,在下载列表中选择所需的数据库版本。网站:https://www.postgresql.org/ftp/source
由于我们要在CentOS下安装,需要选择源码。将PostgreSQL压缩包进行解压,进入解压目录,通过./configure --help 可以看到帮助信息。
<center>./configure --prefix=/usr/local/postgresql</center>
如果缺少C编译器,安装一个gcc编译器即可。yum install gcc
如果缺少readline库,则安装readline包。但是系统一般会自带readline包。
<center>rpm -qa | grep readline</center>
但是有时候还需要readline开发包(readline-devel),而不是readline包。
<center>yum install readline-devel</center>
若安装的时候还缺少zlib开发包继续安装zlib-develyum install zlib-devel
配置完成后会发现创建了config.status配置文件:make&&make install

创建数据目录

#建postgres数据库的目录
mkdir -p /var/postgresql/data
chown postgres:postgres /var/postgresql -R
chown postgres:postgres /usr/local/postgresql -R

2.2用户权限和环境变量

首先添加用户postgres useradd postgres
接下来设置权限,将postgres的数据库目录赋给postgres用户。首先切换到postgres用户 su - postgres 打开.bash_profile

export PGHOME=/usr/local/postgresql
export PGDATA=/var/postgresql/data
export PATH=$PGHOME/bin:$PATH
export MANPATH=$PGHOME/share/man:$MANPATH
export LANG=en_US.utf8
export DATE=`date +"%Y-%m-%d %H:%M:%S"`
export LD_LIBRARY_PATH=$PGHOME/lib:$LD_LIBRARY_PATH
alias rm='rm  -i'
alias ll='ls -lh'
#alias pg_start='pg_ctl start -D $PGDATA'
#alias pg_stop='pg_ctl stop -D $PGDATA -m fast'

修改以后,可以source一下使其生效。source ./.bash_profile
接下来检查是否有正确设定环境变量,任意切换目录输入which psql以及psql -V 即可分别查看psql客户端的路径和postgreSQL的数据库版本。

2.3数据库初始化

环境变量配置结束后,直接执行initdb即可初始化DB。在使用initdb进行初始化的同时我们可以指定参数来同时进行一些初始化工作,指定pgdata(postgresql数据目录)、指定encoding(编码)、指定数据库超级用户的用户名和密码等等,在最后面我标记出的这段话指出了如果data目录没有指定,则会默认使用环境变量中的PGDATA,由于之前我们刚刚设置了PGDATA环境变量,所以此处我们也就无需再额外指定,最后执行初始化命令:
initdb -D /var/postgresql/data pg_ctl D /var/postgresql/data -l /var/postgresql/logfile start

可以通过SQL语句测试postgreSQL数据库

psql
#登录数据库

create database test;
#创建测试数据库

\c test
#切换数据库

create table student(
sno char(10),
sname char(15),
age int,
);
#创建数据库表

insert into student values('14030110001','WHH',21);
#插入测试数据

select * from test;
#输出数据

2.4 修改PostgreSQL数据库的配置实现远程访问

vim /var/postgresql/data/postgresql.conf
#设置舰艇网络找到listen_addresses 关键字
listen_addresses = '*'


vim /var/postgresql/data/pg_hba.conf
#在文件下方添加这句话
host    all    all    0.0.0.0/0   trust#添加到需要链接的主机地址

​ 查看端口

#重启服务
pg_ctl -D /var/postgresql/data -l /var/postgresql/logfile restart
#停止服务
pg_ctl -D /var/postgresql/data -l /var/postgresql/logfile stop
#端口是否启用了
netstat -anp | grep 5432

此文档为个人总结文档,非原创。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,033评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,725评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,473评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,846评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,848评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,691评论 1 282
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,053评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,700评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,856评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,676评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,787评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,430评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,034评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,990评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,218评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,174评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,526评论 2 343

推荐阅读更多精彩内容