linux centos7下通过yum安装默认的postgresql

centos7默认的安装源里面自带了postgresql,我们可以不用下载postgresql安装包或者升级安装源,只不过自带的postgresql版本比较低,这里CentOS Linux release 7.2.1511(Core)系统,添加网易163的源之后,自带的postgresql是9.2版本,这里介绍如何通过yum安装postgresql以及安装之后的设置。默认安装之后,只会监听本机127.0.0.1地址,开启5432端口,而且只容许postgres用户登录。为了让远程客户端能够连接,我们需要修改配置监听地址改为"*"(postgresql.conf文件中),即监听所有地址。为了在本地无需切换到postgres用户就可以登录,我们需要增加在postgresql配置文件pg_hba.conf配置文件中修改peer为trust,即登录用户是可信的,无需验证权限,为了让外部主机可以登录,还需要增加一行配置信息。

host    all    all  0.0.0.0/0    md5

下面通过实战来演示如何安装以及配置postgresql数据库。

检查安装源:

yum search postgresql

安装:

yum install postgresql-server

 

安装postgresql-server会附带安装上postgres客户端,因此不必重复安装。安装完成,postgresql操作相关的命令都会添加到/usr/bin目录下,可以在命令行下直接使用。

[root@client usr]# which psql
/usr/bin/psql
[root@client sbin]# which postgresql-setup
/usr/bin/postgresql-setup
[root@client sbin]# whereis postgresql-setup
postgresql-setup: /usr/bin/postgresql-setup /usr/share/man/man1/postgresql-setup.1.gz

检查一下版本信息:

 

 同时,还会生成postgres用户,postgresql启动之后,在本机只能切换到postgres用户下才可以通过psql访问。

初始化数据库:

安装完成之后,不能直接启动数据库,需要先执行初始化,初始化之后,会生成postgresql相关配置文件和数据库文件,他们都会存放在路径/var/lib/pgsql/data下。

postgresql-setup initdb

检查一下数据库存储路径:

 

启动数据库:

service postgresql start

启动成功,会监听本机127.0.0.1的5432端口。 

登录测试:

默认情况下,我们使用psql postgres命令登录,使用的是root用户,会提示没有这个角色,我们按照提示使用psql -U postgres命令登录,发现提示Peer authentication failed for user "postgres",我们只能切换到postgres用户,然后直接登录:

需要解决root用户下无法通过psql -U postgres登录的问题,我们需要修改配置文件pg_hba.conf,将

local    all    all    peer

修改为:

local    all    all    trust 

另外,我们需要让外部IP能够连接本机的postgresql,我们需要修改postgresql.conf配置文件中的listen_addresses属性为"*",并且在pg_hba.conf配置文件中新增一行配置:

host    all    all    0.0.0.0/0    md5

修改配置:

配置文件经过初始化之后,全部会生成在/var/lib/pgsql/data目录下:

编辑postgresql.conf文件,修改监听地址:

 

再次启动数据库:

修改成功之后,重启数据库服务,监听本机地址发生变化,不再是127.0.0.1了。

登录测试:

本地可以在root用户下使用psql -U postgres直接登录了,不会报错。

不再出现之前登录失败的情况了。

 

远程连接测试:

安装postgresql就是为了让外部能够连接的,这里安装之前,需要修改postgres用户的密码,在本机,修改密码有两种方式:直接\password 的方式和通过alter user postgres with password 'postgres'语句:

远程登录的时候,我们需要用户名和密码,这里在windows上使用navicat premium:

至此,安装过程就彻底结束了,后续如何操作数据库,就是和安装无关了。 

 

  • 12
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 10
    评论
要在 CentOS 7 上离线安装 PostgreSQL,您需要完成以下步骤: 1. 从 PostgreSQL 官方网站下载适用于您的 CentOS 版本的 PostgreSQL 安装程序和依赖项。 2. 将下载的文件传输到 CentOS 7 服务器。 3. 解压 PostgreSQL 安装程序和依赖项。 4. 安装依赖项,以确保 PostgreSQL 能够在 CentOS 7 上运行。您可以使用以下命令安装这些依赖项: ``` yum install -y readline-devel zlib-devel openssl-devel libxml2-devel libxslt-devel ``` 5. 运行 PostgreSQL 安装程序。您可以使用以下命令运行安装程序: ``` rpm -ivh postgresql-<version>.rpm ``` 其中 `<version>` 是您下载的 PostgreSQL 版本号。 6. 启动 PostgreSQL 服务。您可以使用以下命令启动服务并设置其在系统启动时自动启动: ``` systemctl enable postgresql systemctl start postgresql ``` 7. 确认 PostgreSQL 是否已正确安装并正在运行: ``` systemctl status postgresql ``` 如果一切正常,您应该看到类似于以下内容的输出: ``` Loaded: loaded (/usr/lib/systemd/system/postgresql.service; enabled; vendor preset: disabled) Active: active (running) since Wed 2018-06-20 12:19:44 IST; 6s ago Main PID: 10369 (postgres) CGroup: /system.slice/postgresql.service ├─10369 /usr/bin/postgres -D /var/lib/pgsql/data -p 5432 ├─10371 postgres: logger process ├─10373 postgres: checkpointer process ├─10374 postgres: writer process ├─10375 postgres: wal writer process ├─10376 postgres: autovacuum launcher process └─10377 postgres: stats collector process ``` 恭喜您,现在您已在 CentOS 7 上成功离线安装 PostgreSQL
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

luffy5459

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值