CentOS7 如何离线安装PostgreSQL数据库

举报
jackwangcumt 发表于 2021/08/28 10:05:46 2021/08/28
【摘要】 如果CentOS所在的服务器限于安全原因,客户并未给我们配置访问外网的权限,那么如何安装PostgreSQL数据库呢?本文将通过具体步骤来详细讲解如何在CentOS7 系统上离线安装PostgreSQL12数据库。

    为了降低成本,有些Web应用需要部署到开源的Linux操作系统上,而其中CentOS操作系统是比较常用的一种数据库,在此操作系统上,可以方便的搭建Java环境、Tomcat容器以及数据库服务,比如MySQL或者 PostgreSQL。在一般情况下,CentOS所在的服务器是可以联网的,因此,可以通过命令很方便的从网上下载相关的安装包以及依赖包等资源,极个别的可能由于网站资源的限制,下载不了或者下载速度过慢,但都可以通过切换默认的软件源地址来变相解决。

   但是,如果CentOS所在的服务器限于安全原因,客户并未给我们配置访问外网的权限,那么如何安装PostgreSQL数据库呢?本文将通过具体步骤来详细讲解如何在CentOS7 系统上离线安装PostgreSQL12数据库。

1  离线安装包准备


   首先可以访问网址 https://pkgs.org/search/?q=postgresql12 来下载对应的离线安装包文件,具体的示例截图如下:

2.jpg

通常情况下,需要下载如下几个RPM安装包: 

postgresql12-12.3-1PGDG.rhel7.x86_64.rpm
#安装扩展
postgresql12-contrib-12.3-1PGDG.rhel7.x86_64.rpm
#客户端进行连接.
postgresql12-libs-12.3-1PGDG.rhel7.x86_64.rpm
#数据库的安装文件
postgresql12-server-12.3-1PGDG.rhel7.x86_64.rpm

注意:具体版本则需要根据自己的需要来进行选择,centos7对应于rhel7,如果是centos8 的话 选择 rhel8 进行下载。

下载完成的文件截图如下:

3.jpg

 然后,就需要利用SSL工具将本地下载的RMP安装文件上传到CentOS7服务器的pg12rpm目录中。(虽然服务器不能联网访问网站资源,但可以进行远程登录进行管理)。

2  离线安装


   首先进入上述离线安装文件所在的目录,用ll命令查询一下安装包是否已经离线上传好,界面截图如下:

6.jpg

在pg12rmp目录下,执行如下命令,进行安装包的安装:

yum localinstall *.rpm

 期间可能会访问网络,但不影响安装,在提示是否确认安装时,选择y确认安装,等待安装即可。成功安装完postgresql 12 数据库之后,会自动创建一个服务,可以看一下名为postgresql-12的服务,使用如下命令进行服务状态查看:

systemctl status postgresql-12  

首次安装后,此命令会显示相关的文件信息:

Loaded: loaded (/usr/lib/systemd/system/postgresql-12.service; enabled; vendor preset: disabled)

可以通过cat命令查看此文件的内容,其中包含相关的数据存储目录信息:

# Location of database directory
Environment=PGDATA=/var/lib/pgsql/12/data/ 
#程序目录
ExecStart=/usr/pgsql-12/bin/postmaster -D ${PGDATA} 

数据库初始化


   有了数据库的数据存储目录和程序所在目录,可以使用如下命令进行数据库的初始化工作,具体示例代码如下:

su - postgres
cd /usr/pgsql-12/bin/
#初始化数据库
./initdb -D /var/lib/pgsql/12/data/

  成功执行命令后,需要退出postgres命令环境,用root 用户启动postgresql 服务,并且设置postgresql服务为自动启动,这样在服务器重启后,无需手动再启动postgresql 服务,具体命令如下:

systemctl enable  postgresql-12 && systemctl restart postgresql-12

  最后,需要对PG数据库进行安全性方面的配置,比如修改密码,创建用户,设置登录策略等等,下面给出一些示例代码:

su - postgres
psql
#修改密码
alter role postgres with password 'your_root_pwd###';
#修改配置文件,配置登录策略等
vim /var/lib/pgsql/12/data/pg_hba.conf
#增加一行
host    all             all             0.0.0.0/0         md5   
# trust 是免密, md5 是加密
#修改数据库其他配置信息
vim /var/lib/pgsql/12/data/postgresql.conf
listen_addresses = '*' 
max_connections = 700
#重启服务
systemctl restart  postgresql-12

重启后,再次查看数据库状态,命令如下:

7.jpg

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。