PostgreSQL 离线安装,源码安装,tar.gz安装

一 、 准备

1.安装环境 :CentOS-7.6

2.Pg安装包下载地址:http://www.postgresql.org/ftp/source/

3.

4.安装方法:离线安装

二、安装

1). 在root权限下创建用户组 postgres 并创建用户postgres 

Demo:

```

[root@localhost postgresql-12.0]# groupadd postgres

[root@localhost postgresql-12.0]# useradd -g postgres postgres

[root@localhost postgresql-12.0]# password postgres

```

设置linux系统中postgres用户的密码。

2) .创建postgreSQL的数据存储目录,这个需要根据磁盘的空间大小选择(可以使用df -hT 来看)。我这里放置在/pgsql下面测试。

[root@localhost ~]mkdir /pgsql

[root@localhost ~] chown -R postgres:postgres   /pgsql

3)使用postgres用户重新登录并上传安装包。

将postgresql-12.0.tar.gz上传至/home/postgres下。

4).解压压缩包

[ postgres @localhost ~]#tar -zxvf postgresql-12.0.tar.gz 

5)进入解压后的文件夹 

[ postgres@localhost ~]#cd postgresql-12.0 

6)编译 postgresql 源码

[ postgres@localhost postgresql-12.0]# ./configure --prefix=/pgsql

在编译过程中可能会报错,请根据提示下载相关依赖包

注: 根据Centos的版本下载rpm依赖包并安装。因每个系统的版本和系统安装模式不一样,缺少的包也不一致,无法做到问题的统一解决。

rpm   -ivh   xxx.rpm                        # rpm包的安装指令。缺少的安装包需要自行下载并安装!(安装时需要root权限,需要先切过去)

注:可以去下面这些网址搜索缺少的rpm包。

http://rpm.pbone.net/

http://www.rpmfind.net/linux/rpm2html/search.php?query

https://pkgs.org/

如果在安装缺包后,依然报上述错误,请在 ./configure --prefix=/pgsql  后加上 --without-zlib 的指令。(以zlib为例)

[postgres@localhost postgresql-12.0]# make     

[postgres@localhost postgresql-12.0]# make install

[postgres@localhost~]# cd /pgsql

[postgres@localhost ~]# ls -al

bin  

include  

lib  

share

7).    创建 postgresql 数据库的数据主目录并修改文件所有者这个数据库主目录是随实际情况而不同,这里我们的主目录是在/pgsql /data 目录下:

[ postgres@localhost pgsql]# mkdir data

[postgres@localhost pgsql]# ls -al

8). 配置环境变量 进入/home/postgres 目录可以看到.bash_profile 文件。

[ postgres@localhost pgsql]# cd ~

[ postgres@localhost]# vi .bash_profile 

添加以下内容。

export PGHOME=/pgsql

export PGDATA=/pgsql/data

PATH=$PATH:$HOME/bin:$PGHOME/bin

[ postgres@localhost ]# source .bash_profile 

9.)    切换用户到 postgres 并使用 initdb 初使用化数据库

[postgres@localhost ~]# initdb 

10).  配置服务

[postgres@localhost]$ cd /pgsql/postgresql/data

[postgres@localhost ]$ vi postgresql.conf 

listen_addresses= '*'                       #允许所有的IP连接PG     

port= 5432                                          #开放5432端口           

注: 生产环境中PG的参数还需要另行优化。此处省略,如需要交流请联系博主。

注:其中,参数“listen_addresses”表示监听的 IP 地址,默认是在 localhost 处监听,也就是 127.0.0.1 的 ip 地址上监听,只接受来自本机 localhost 的连接请求,这会让远程的主机无法登陆这台数据库,如果想从其他的机器上登陆这台数据库,需要把监听地址改为实际网络的地址,一种简单的方法是,将行开头的#去掉,把这个地址改为*,表示在本地的所有地址上监听。 

[postgres@localhost data]$ vi pg_hba.conf 

在最后一行 ,添加如下内容。(所有IP均可以登录PG且需要做md5验证登录)

host    all             all             0.0.0.0/0                 md5

11). 设置 PostgreSQL 开机自启动。 PostgreSQL 的开机自启动脚本位于contrib/start-scripts 路径下,linux 文件即为 linux 系统上的启动脚本 (root权限

[root@localhost]$ cd /home/postgres/postgresql-12.0/contrib/start-scripts

修改 linux 文件属性,添加 X 可执行权限

[root@localhost start-scripts]# chmod a+x linux

12) 复制 linux 文件到/etc/init.d 目录下,更名为postgresql

[root@localhost start-scripts]# cp linux  /etc/init.d/postgresql

修改/etc/init.d/postgresql 文件的两个变量 prefix 和PGDATA

[root@localhost ] $ vi /etc/init.d/postgresql

修改为 自己的安装路径:

prefix=/pgsql

PGDATA="/pgsql/data"

设置 postgresql 服务开机自启动: 

[root@localhost ~]#   cd /etc/init.d

[root@localhost init.d]# chkconfig --add postgresql

[root@localhost init.d]# chkconfig  

查看开机自启动服务设置成功。

postgresql    0:关闭    1:关闭    2:启用    3:启用    4:启用    5:启用    6:关闭

13)执行 service

postgresql start,启动 PostgreSQL 服务

[root@localhost init.d]# service postgresql  start

Starting PostgreSQL: ok   # 表示启动成功

现在就可以通过客户端进行连接访问数据库!  

14)验证

切换用户:    

[root@localhost ~]#  su - postgres  

[ postgres@localhost ~]#  psql                     ## (如果失败再次执行source .bash_profile)

postgres=#  ALTER USER postgres WITH PASSWORD '你的密码';

修改postgres的密码

最后可通过远端可视化工具登录测试。

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

推荐阅读更多精彩内容