CentOS7下PostgreSQL安装过程

本文详细介绍PostgreSQL在红帽系系统上的安装方法,包括在线、离线及使用yum安装流程,以及数据库初始化、配置修改和重启服务步骤,帮助读者快速掌握PostgreSQL部署。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. 在线安装

访问https://www.postgresql.org/download/linux/redhat/获取在线安装方法,如下图所示:
在这里插入图片描述

  1. 离线安装

去网址https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-latest-x86_64/下载三个文件

postgresql10-10.7-1PGDG.rhel7.x86_64.rpm
postgresql10-libs-10.7-1PGDG.rhel7.x86_64.rpm
postgresql10-server-10.7-1PGDG.rhel7.x86_64.rpm

然后依次安装

rpm -ivh postgresql10-*
  1. 使用系统自带的yum安装

装包
sudo yum install postgresql-server postgresql-contrib

说明:

这种方式直接明了,其他方法也可以参考官网的安装介绍。centos是红帽系的。
postgresql主要有以下几个包:
postgresql-client:libraries and client binaries
postgresql-server:core database server
postgresql-contrib:additional supplied modules
postgresql-devel:libraries and headers for C language development
pgadmin3:pgAdmin III graphical administration utility
作为服务器,只用装postgresql-server和postgresql-contrib

  1. 数据库配置

初始化
sudo postgresql-setup initdb
说明:
根据红帽系的策略,PostgreSQL安装完成后,相应的服务不会自动启动,数据库也不会自动初始化,初始化操作需要手动进行。
修改pg_hba.conf

sudo vim /var/lib/pgsql/data/pg_hba.conf

插入一行:host all all 0.0.0.0/0 md5

说明:

配置文件目录可能带版本号,比如pgsql/9.5/data这种,自己找一下。
hba means host-based authentication
默认情况下,PostgreSQL不允许password authentication,不允许非localhost的主机,不允许远程登录。(所谓默认情况就是PostgreSQL刚装好时候conf文件里写的情况。)
插入的那一行,格式为CONNECTIONTYPE DATABASE USER ADDRESS METHDO
字段含义、各字段可选值、配置方式直接参考conf文件的注释。
提一句,ADDRESS那里自己配一下,不要太放开了,md5即用密码认证身份登录。
修改postgresql.conf

sudo vim /var/lib/pgsql/data/postgresql.conf

改一行:listen_addresses = '*'

说明:

postgresql.conf文件中涉及诸如:最大连接数、监听地址,监听端口、日志、内存、硬盘等等各种设置。文件注释详细,自己按需修改,用不到的先不做了解。
监听地址原值为localhost,这时只能本机访问,改成*或0.0.0.0或逗号分隔字符串都行。
很多值是change requires restart,需要重启postgresql-9.5服务(要带版本号)。
重启postgresql服务
systemctl restart postgresql-9.5.service
或者

sudo service postgresql-9.5 restart

说明:
重启服务使之前修改的配置生效。
注意事项
安装目录/var/lib/pgsql及目录下文件或文件夹的可读、可写、可操作统统只开放给用户postgres
文件不能操作时,请sudo su - postgres切换到postgres用户进行操作,千万不要改动默认的文件权限,否则会导致postgresql服务无法启动。
在终端输入psql命令时,常常会遇到下面这个错。这个错有两个解决方式:
重启postgresql服务。
删掉/usr/local/var/postgres/postmaster.pid文件。

psql: could not connect to server: No such file or directory
    Is the server running locally and accepting
    connections on Unix domain socket “/tmp/.s.PGSQL.5432”?

postgres的默认密码为空,上面弄好以后记得改密码。

sudo su - postgres
psql
ALTER USER postgres PASSWORD '123456';
  1. 数据库卸载

首先检查数据库是否安装

rpm -qa | grep postgres    检查PostgreSQL 是否已经安装
rpm -qal | grep postgres   检查PostgreSQL 安装位置

如果已经安装,使用rpm -e 卸载

rpm -e postgresql94-contrib-9.4.4-1PGDG.rhel6.x86_64 postgresql94-server-9.4.4-1PGDG.rhel6.x86_64  卸载
rpm -e postgresql94-libs-9.4.4-1PGDG.rhel6.x86_64 postgresql94-9.4.4-1PGDG.rhel6.x86_64  卸载

ubuntu16.04下安装postgresql 10.3
参考https://blog.youkuaiyun.com/cliviabao/article/details/80097884

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值