当前位置: 首页 > backend >正文

阿里云安装postgre数据库

### 1. 添加 PostgreSQL 官方仓库


PostgreSQL 默认不在 CentOS 8 的基础仓库中,您需要先添加官方的 PostgreSQL 仓库。运行以下命令下载并安装仓库配置文件:

```bash
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
```

### 2. 安装 PostgreSQL


启用仓库后,您可以使用 `dnf` 命令安装 PostgreSQL。以下命令安装 PostgreSQL 13(您也可以选择其他版本):

```bash
sudo dnf install -y postgresql13-server
```

### 3. 初始化数据库并启动服务


安装完成后,初始化 PostgreSQL 数据库并启动服务:

```bash
sudo /usr/pgsql-13/bin/postgresql-13-setup initdb
sudo systemctl enable postgresql-13
sudo systemctl start postgresql-13
```

### 4. 配置防火墙(如需要远程访问)


如果您需要从其他主机访问 PostgreSQL,需配置防火墙允许 5432 端口(PostgreSQL 默认端口):

```bash
sudo firewall-cmd --permanent --add-port=5432/tcp
sudo firewall-cmd --reload
```

防火墙如果没开的话,直接跳过这里。

#centos8查看防火墙状态
systemctl status firewalld.service

阿里云因为外边还有一层防火墙,需要在外边配置下 5432 端口,

本地datagrip连接工具才能访问。

### 5. 配置 PostgreSQL 访问权限


编辑 PostgreSQL 的配置文件以允许远程连接。修改以下两个文件:

- **pg_hba.conf**(客户端认证配置文件):


```bash
sudo vi /var/lib/pgsql/13/data/pg_hba.conf
```
添加类似以下行以允许特定 IP 或所有 IP 访问:
```
host    all             all             0.0.0.0/0            trust


```

- **postgresql.conf**(全局配置文件):


```bash
sudo vi /var/lib/pgsql/13/data/postgresql.conf
```
修改以下行以允许监听所有 IP:
```
listen_addresses = '*'
```

保存并重启 PostgreSQL 服务:


```bash
sudo systemctl restart postgresql
```

完成以上步骤后,PostgreSQL 就可以在 CentOS 8.2 上运行并接受远程连接了。

6.修改postgre 密码

  1. 切换到 postgres 用户
    安装完成后,默认会有一个系统用户 postgres,你需要切换到该用户以操作 PostgreSQL。

    sudo -i -u postgres

  2. 进入 PostgreSQL 命令行
    使用 psql 命令进入 PostgreSQL 的交互式终端。

    psql

  3. 设置密码
    在 psql 命令行中输入以下 SQL 命令来设置 postgres 数据库用户的密码:

    ALTER USER postgres WITH PASSWORD 'your_new_password';

    请将 'your_new_password' 替换为你想要设置的密码。

  4. 退出 psql
    设置完成后,输入 \q 退出 PostgreSQL 命令行。

    \q

完成以上步骤后,postgres 用户的密码就设置成功了。你可以使用新密码通过 psql -U postgres -W 命令测试登录。

http://www.xdnf.cn/news/18730.html

相关文章:

  • 安全合规:AC(上网行为安全)--中
  • 2.认证与授权升级方案及使用
  • 力扣(有效括号)
  • 用蒙特卡洛法求解三门问题和Π
  • GPIO子系统自主实现(简单版)
  • 开发避坑指南(36):Java字符串Base64编码实战指南
  • 迭代器设计模式
  • 《XXL-Job 全面介绍:Java 开发中的分布式任务调度框架》
  • 【互动屏幕】为什么现在数字展厅偏爱地面互动装置?
  • 嵌入式Linux内核编译与配置
  • 神经网络与梯度算法:深度学习的底层逻辑与实战解析
  • 微论-神经网络中记忆的演变
  • “Datawhale AI夏令营--coze空间
  • Java 探针的原理
  • 深入解析:为什么应该避免使用 atoi、atol 和 atof 函数
  • 《C++ Primer 第五版》省略符号(...)
  • 【小增长电商技术分享】电商支付宝批量转账工具技术测评:架构特性、合规风险与选型方法论,支付宝官方|小增长|云方付|易推客省心返
  • vi/vim 查找字符串
  • Ajax笔记(上)
  • Spark面试题
  • Redis面试精讲 Day 30:Redis面试真题解析与答题技巧
  • 南京魔数团:AR技术引领远程协作新纪元
  • Java网络编程:从入门到精通
  • STM32之DMA详解
  • 算法题记录01:
  • 8月25日
  • 专题:2025人工智能2.0智能体驱动ERP、生成式AI经济现状落地报告|附400+份报告PDF、原数据表汇总下载
  • [论文阅读]RQ-RAG: Learning to Refine Queries for Retrieval Augmented Generation
  • k8s的etcd备份脚本
  • AR技术赋能农业机械智能运维