博客
关于我
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/

你可能感兴趣的文章
python excel接口自动化测试框架!
查看>>
Python exec 函数解析:探索动态代码执行的无限可能!
查看>>
Python EXEC和__NAME__
查看>>
Python exe文件打包神器-Nuitka!
查看>>
python file
查看>>
Python FileDialog获取文件夹路径不是文件
查看>>
python filter过滤器的使用_python基础知识分享:zip()、filter函数和reduce如何使用?...
查看>>
python flask 请求code 400, message Bad request version
查看>>
Python Flink Stateful函数入口上的Kafka键访问
查看>>
Python float - str - 浮动怪异
查看>>
Python Flower库:分布式任务管理与监控
查看>>
Python for 循环和迭代器行为
查看>>
Python For循环多次返回
查看>>
python frame_python3 selenium自动化 frame表单嵌套的切换方法
查看>>
Python ftplib - 指定端口
查看>>
Python furl库:一键搞定复杂URL操作
查看>>
Python GC 也会关闭文件吗?
查看>>
python gen_key.py 报错 提示找不到OpenSSL lib
查看>>
python getattrribute_Python学习——面向对象高级之反射
查看>>
Python进阶语法:字典推导式
查看>>