首页 > 数据库 >Linux centos7.6 在线及离线安装postgresql12 详细教程

Linux centos7.6 在线及离线安装postgresql12 详细教程

时间:2023-08-17 18:12:16浏览次数:47  
标签:12 postgresql 离线 postgresql12 systemctl 64 Linux rpm

一、在线安装

官网找到对应的版本

PostgreSQL:  https://www.postgresql.org/

 

 

 

 

 

1.配置yum源

sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm

 

2.在线安装PostgreSQL

sudo yum install -y postgresql12-server

安装完成后,查看一下配置路径,后面修改配置文件在该路径下

(PostgreSQL有两个重要的配置文件:postgresql.conf和pg_hba.conf就在此路径下,此路径可修改,一般只在实际使用环境才修改)

这里就用默认路径,不做修改,后面离线安装时,我再修改成指定路径

 

 

3.初始化PostgreSQL

sudo /usr/pgsql-12/bin/postgresql-12-setup initdb

 

 

4.启动PostgreSQL服务

#设置开机自启动

sudo systemctl enable postgresql-12

#启动PostgreSQL服务

sudo systemctl start postgresql-12

 

 

5.修改密码

#切换用户,postgressql安装时会自启创建postgres用户

su - postgres

 

#进入数据库

psql

 

#修改密码

alter user postgres with password 'postgres';

 

 

 

6.配置远程访问

#进入该postgresql.conf文件中修改一下

vi /var/lib/pgsql/12/data/postgresql.conf

​#listen_addresses = '*'        #表示监听所有的ip信息(记得去掉#)

#​port = 5432                         #表示服务的端口,可以自定义为其他端口

 

 

 

 

 

#进入该pg_hba.conf文件中修改一下

vi /var/lib/pgsql/12/data/pg_hba.conf

 

#在最下面添加西面一行内容:

host    all             all             0.0.0.0/0               md5

 

修改允许访问的IP(以下配置允许所有的IP访问)

TYPE  DATABASE USER ADDRESS  METHOD

host    all    all   0.0.0.0/0   md5

 

 

 

#修改完成,需要重启服务才生效

systemctl restart postgresql-12

 

7.关闭防火墙

systemctl stop firewalld

systemctl disable firewalld

setenforce 0

 

#关闭并禁用 NetworkManager

systemctl stop NetworkManager

systemctl disable NetworkManager

 

#重启网络服务

systemctl restart network

8.Navicat测试

 

 

二、离线安装

1.下载软件包

PostgreSQL: https://www.postgresql.org/

 

 

 

 

进入后滑到最下面

 

找到需要的版本

 

 

下载这四个,下载的小版本号要一样的

 

 

 

下载完成后,上传到内网的服务器。

 

2.安装PostgreSQL

rpm的安装顺序,注意一定要按照顺序,否则安装失败

rpm -ivh postgresql12-libs-12.15-1PGDG.rhel7.x86_64.rpm

rpm -ivh postgresql12-12.15-1PGDG.rhel7.x86_64.rpm

安装 postgresql12-12.15-1PGDG.rhel7.x86_64.rpm 失败,执行依赖缺失

因为是在内网,无法直接下载安装依赖,所以要在外网的机器上下好包后传到内网服务器上

 

#在外网的机器上执行,下载暂不安装

yum install --downloadonly --downloaddir=/pg12_rpm libicu

 

将该包上传到内网服务器上,上传后,到包所在的文件夹下安装

rpm -ivh libicu-50.2-4.el7_7.x86_64.rpm

安装完成后,重新安装postgresql12-12.15-1PGDG.rhel7.x86_64.rpm,按顺序安装

rpm -ivh postgresql12-12.15-1PGDG.rhel7.x86_64.rpm

rpm -ivh postgresql12-server-12.15-1PGDG.rhel7.x86_64.rpm

rpm -ivh postgresql12-contrib-12.15-1PGDG.rhel7.x86_64.rpm

安装 postgresql12-contrib-12.15-1PGDG.rhel7.x86_64.rpm 失败,执行依赖缺失

error:Failed dependencies:

libxslt.sn.1()(64bit) is needed by.postgresql12-contrib-12.4-1PGDG.rhel7.x06_64

libxslt.so.1(LIBL2_1.0.11)(64bit) is needed by.postgresq112-contrb-12.4-1PGDG.rhe17.x00_04

libxslt.so.1(LIBXML2_1.0.18)(64bit) is needed by postgresq112-contrib-12.4-1PGDG.rhe17.x0_b4

libxslt.so.1(LIBXL2_1.0.22)(64bit) is needed by postgresq112-contrib-12.4-1PGDG.rhel7.x0b_64

下载libxslt-1.1.28-6.el7.x86_64.rpm,然后上传到服务器上。

rpm -ivh  libxslt-1.1.28-6.el7.x86_64.rpm

然后再重新安装postgresql12-contrib-12.15-1PGDG.rhel7.x86_64.rpm。

#注:如果有其他包也报依赖缺失,也是按上面的教程补全依赖

3.修改数据存储路径

在内网的,一般都是实际使用环境,有时会需要修改路径,所以我演示一下,不用的可跳过此项,直接初始化PostgreSQL即可

#创建自定义目录

mkdir /pgsqldata

 

 

#修改所属用户和用户组

chown  postgres:postgres  -R  /pgsqldata ;

Chmod  -R  700   /pgsqldata ;

 

#配置PostgreSQL库自定义目录,在该路径下的/usr/lib/systemd/system/postgresql-12.service文件中修改

vi /usr/lib/systemd/system/postgresql-12.service

 

 

 

#修改后执行

systemctl  daemon-reload

 

4.初始化PostgreSQL

sudo /usr/pgsql-12/bin/postgresql-12-setup initdb

 

5.启动PostgreSQL服务

#设置开机自启动

sudo systemctl enable postgresql-12

 

#启动PostgreSQL服务

sudo systemctl start postgresql-12

6.修改密码

#切换用户,postgressql安装时会自启创建postgres用户

su - postgres

 

#进入数据库

psql

 

#修改密码

alter user postgres with password 'postgres';

 

 

7.配置远程访问

#配置文件postgresql.conf,在自定义的目录/pgsqldata下,进文件中修改一下

vi  /pgsqldata/postgresql.conf

 

#listen_addresses = '*'    #表示监听所有的ip信息

#port = 5432                 #表示服务的端口,可以自定义为其他端口

#/ 后面加要匹配的内容

 

 

#配置文件pg_hba.conf,在自定义的目录/pgsqldata下,进文件中修改一下

vi /pgsqldata/pg_hba.conf

 

#在最下面添加下面一行内容

host    all             all             0.0.0.0/0               md5

 

#修改完成,需要重启服务才生效

systemctl restart postgresql-12

 

8.关闭防火墙

systemctl stop firewalld

systemctl disable firewalld

setenforce 0

 

#关闭并禁用 NetworkManager

systemctl stop NetworkManager

systemctl disable NetworkManager

 

#重启网络服务

systemctl restart network

9.Navicat测试

 

标签:12,postgresql,离线,postgresql12,systemctl,64,Linux,rpm
From: https://www.cnblogs.com/yeyuzhuanjia/p/17638418.html

相关文章

  • Linux常用命令
    目录结构具体介绍/bin:是Binary的缩写,这个目录存放着最经常使用的文件/sbin:s就是superuser的意思,这里存放着系统管理员使用的系统管理程序/home:存放着普通用户的主目录,在linux中的每一个用户都有一个自己的目录,一般该目录是以用户的账号命名的/root:该目录为系统管理员,也称作......
  • 鸟哥的Linux私房菜服务器架设篇
    第十五章时间服务器:NTP服务器1、会有统一的NTP服务器来保证每个地区/国家的统一时间;2、时间相关的概念:   a、格里尼治时间(GreenwichMeanTime);   b、UTC(CoordinatedUniversalTime);3、UTC时间与GMT时间有差不多16分钟的误差;4、Linux系统本来就有两种时间,一种是Linu......
  • 测试面试 | 怎么查看redis | linux
    总的来说就是查服务、查端口、查进程。1、查看服务状态servicestatusnginx / systemctlstatusredis 直接可以看到版本号pid 2、lsof-i:3306一般都是一个服务一个端口,不能两个服务一个,占用了,就起不来了. 3、ps-ef|grepredis  ......
  • linux 查找
    locate命令根据关键字在整个Linux系统中查找定位1.基于自己的数据库对文件进行查找;会把匹配的文件全部给出┌──(root㉿kali)-[~]└─#locate-hUsage:plocate[OPTION]...PATTERN...-b,--basenamesearchonlythefilenameportionofpat......
  • ​离线数仓数据源变更及应对方案
    离线数仓数据源的变化对数仓的影响是巨大的,所以我们不但要做好事后监控,也要做好事前的各种流程制度规范,比如所有业务的升库语句需要DBA对其进行管控,只能由DBA进行升库处理,并且做好处理记录,同时把相关变更通知到数据部门。为了防止有导致异常的致命性错误,最好能把binlog监控的就监......
  • linux中awk 命令中 NR、FNR内置变量
     001、NR[root@PC1test02]#cata.txt##测试文件12345[root@PC1test02]#catb.txt##测试文件1112131415[root@PC1test02]#awk'{printNR,$0}'a.txtb.txt##NR变量,NR将多个文件的行数累积递增11223344556117128139......
  • linux安装oracl19c
    1、下载预安装包wgethttp://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/getPackage/oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm2、下载RPM安装包https://www.oracle.com/cn/database/technologies/oracle-database-software-downloads.html#19c3、上传到服务......
  • 视频集中存储/云存储/磁盘阵列EasyCVR平台接入RTSP设备出现离线情况的排查
    安防视频监控/视频集中存储/云存储/磁盘阵列EasyCVR平台可拓展性强、视频能力灵活、部署轻快,可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等,以及支持厂家私有协议与SDK接入,包括海康Ehome、海大宇等设备的SDK等。平台既具备传统安防视频监控的能力,也具备接入AI智能分析的......
  • linux ssh限制ip白名单访问的两种方式
    第一种:sudovi/etc/ssh/sshd_config空白处添加#如果仅允许用户,不限制IPAllowUsersubuntu#仅允许特定用户特定[email protected]保存退出后执行sudoservicesshrestart第二种:sudovi/etc/hosts.deny添加sshd:ALL先禁止所有IP登录sudo......
  • 如何在Linux系统上查看CPU使用率?
    Linux是一种开源操作系统,也被广泛应用于服务器和嵌入式设备上,那么作为一个服务器操作系统,监控系统资源的使用情况是非常重要的,那么该如何在Linux系统上查看CPU使用率呢?以下是详细的内容:1.使用top命令top命令是一个常用的Linux系统监控命令,可以实时查看系统的进程和资......