博客
关于我
CentOS 7.4安装postgresql96
阅读量:238 次
发布时间:2019-02-28

本文共 2518 字,大约阅读时间需要 8 分钟。

CentOS 7 安装 PostgreSQL 9.6 指南

PostgreSQL 是一款流行的开源关系型数据库管理系统,支持多种操作系统,其中 CentOS 7 是其中之一。以下是安装 PostgreSQL 9.6 的详细步骤指南。

1. 安装存储库

首先,需要从官方仓库安装 PostgreSQL 的存储库文件。可以通过以下命令进行安装:

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

安装完成后,存储库已准备就绪,可以继续下一步操作。

2. 安装客户端包

安装 PostgreSQL 客户端工具,以便与数据库进行交互:

yum install postgresql96

3. 安装服务器包(可选)

如果需要安装数据库服务器,运行以下命令:

yum install postgresql96-server

4. 初始化数据库并启用自动启动

为了初始化数据库并配置自动启动服务,执行以下命令:

usr/pgsql-9.6/bin/postgresql96-setup initdbsystemctl enable postgresql-9.6systemctl start postgresql-9.6

此时,数据库已初始化,服务也已启用。

5. 修改用户密码

默认情况下, PostgreSQL 安装会创建一个名为 postgres 的系统账号。切换到该账号后,可以通过以下命令修改数据库用户的密码:

psql -U postgres

进入数据库环境后,执行:

postgres=# ALTER USER postgres WITH PASSWORD 'postgres@123';

或者通过以下命令直接进入 PostgreSQL 命令行环境:

sudo -i -u postgres

进入后执行 psql 进行密码修改。

6. 允许远程访问

默认情况下, PostgreSQL 只允许本地访问。为了允许远程访问,修改配置文件:

sed -i "s|#listen_addresses = 'localhost'|listen_addresses = '*'|g" /var/lib/pgsql/9.6/data/postgresql.conf

修改完成后,重启 PostgreSQL 服务:

systemctl restart postgresql-9.6

7. 配置主机认证

在 PostgreSQL 配置文件中,默认的认证方式是 Ident。为了支持更多认证方式,修改 pg_hba.conf 文件:

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

修改内容如下:

# "local" is for Unix domain socket connections onlylocal   all             all                                     md5# IPv4 local connectionshost    all             all             127.0.0.1/32            md5# IPv6 local connectionshost    all             all             ::1/128                 md5

修改完成后,重启 PostgreSQL 服务:

systemctl restart postgresql-9.6

8. 防火墙配置

如果使用 CentOS 的防火墙,开放 PostgreSQL 服务:

firewall-cmd --add-service=postgresql --permanentfirewall-cmd --reload

9. 使用 PostgreSQL

创建用户

postgres=# CREATE USER postuser1 WITH PASSWORD 'user1@123';

创建数据库

postgres=# CREATE DATABASE postdb1 OWNER postuser1;

授权数据库

postgres=# GRANT ALL PRIVILEGES ON DATABASE postdb1 TO postuser1;

登录数据库

psql -U postuser1 -d postdb1 -h 127.0.0.1 -p 5432

创建表

postdb1=# CREATE TABLE tb1 (          id INT PRIMARY KEY,          name VARCHAR(20),          salary REAL       );

插入数据

postdb1=# INSERT INTO tb1 (id, name, salary) VALUES (101, 'Mike', 5000.00);

查询数据

postdb1=# SELECT * FROM tb1;

10. 常见问题

1. PostgreSQL 数据库启动失败,端口被占用

如果遇到以下错误:

无法启动数据库,因为端口已被占用。

执行以下命令停止数据库并重启:

systemctl stop postgresql-9.6journalctl -xe

查找占用端口的进程PID:

ps -ef | grep postgreskill -9 PID

重启数据库:

systemctl restart postgresql-9.6

2. 其他

如有其他问题,请参考 PostgreSQL 官方文档或相关技术博客。

11. 卸载 PostgreSQL

如果需要卸载 PostgreSQL,执行以下命令:

yum erase postgresql96

以上步骤均为手动操作,建议在执行前备份数据并谨慎操作。

转载地址:http://xyti.baihongyu.com/

你可能感兴趣的文章
php源码详细安装步骤,linux下php源码安装步骤
查看>>
php漏洞tips
查看>>
php版Zencoding之 phpstorm
查看>>
PHP版本升级5.4手记
查看>>
php版本微信公众号开发
查看>>
php版的微信公众号开发演示
查看>>
php生成html文件的多种方法介绍
查看>>
php生成二维码到图片上
查看>>
php生成二维码并下载图片(适应于框架)
查看>>
PHP生成及获取JSON文件的方法
查看>>
PHP生成唯一不重复的编号
查看>>
PHP的ip2long和long2ip升级函数
查看>>
PHP的json_encode函数应用到微信接口问题(include \uxxxx will create fail)
查看>>
php的一些小笔记--字符串
查看>>
php的几种运行模式CLI、CGI、FastCGI、mod_php
查看>>
php的四大特性八大优势
查看>>
RabbitMQ
查看>>
PHP的威胁函数与PHP代码审计实战
查看>>
PHP的引用举例
查看>>
PHP索引数组unset的坑-array_values解决方案
查看>>