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

debian 12安装 postgresql 17

按照官方文档安装,即可安装成功
https://www.postgresql.org/download/linux/debian/

添加存储库

#添加存储库
sudo apt install -y postgresql-common

#执行 存储库内 命令,自动处理某些东西
sudo /usr/share/postgresql-common/pgdg/apt.postgresql.org.sh

安装 postgresql 17

sudo apt -y install postgresql

安装成功后,默认密码是 空密码

终端进入 postgresql 数据库管理

直接回车即可

sudo -u postgres psql

案例- 创建 超管账户

1.进入终端

sudo -u postgres psql

2.创建超管用户和密码,并授权

# 创建一个新用户 fox
CREATE USER fox WITH SUPERUSER;
# 设置用户 fox 密码 mypassword
ALTER USER fox WITH PASSWORD 'mypassword';
# 授予数据库特权
GRANT ALL PRIVILEGES ON DATABASE postgres TO fox;
# 退出
\q

案例- 创建 新库,并授权给 指定用户

1.进入终端

sudo -u postgres psql

2.创建数据库

CREATE DATABASE mydb;

2.创建用户和密码,并授权

-- 切换到目标数据库
\c mydb

# 创建用户 feng 密码 mypassword
CREATE USER feng WITH PASSWORD 'mypassword';
# 授权用户 feng 有数据库 mydb 访问权限
GRANT CONNECT ON DATABASE mydb TO feng;
-- 授权使用 schema
GRANT USAGE,CREATE ON SCHEMA public TO feng;
-- 授权在 schema 中 授权表操作权限
GRANT SELECT, INSERT, UPDATE, DELETE ON ALL TABLES IN SCHEMA public TO  feng;

-- 可选:授权未来表的权限
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT, INSERT, UPDATE, DELETE ON TABLES TO feng;

# 退出
\q

验证授权

进入终端

sudo -u postgres psql

验证授权

-- 查看数据库权限
\l mydb

-- 查看 schema 权限
\dn+ public

-- 查看表权限
\dp public.*

配置 远程连接,客户端访问

远程连接

sudo vim /etc/postgresql/<版本号>/main/postgresql.conf

sudo vim /etc/postgresql/17/main/postgresql.conf

找到 listen_addresses 行,修改为远程连接的 IP'*'

listen_addresses = '*'  # 允许所有 IP 地址
# listen_addresses = '0.0.0.0,::'  # 允许 IPv4 和 IPv6

客户端访问

sudo vim /etc/postgresql/<版本号>/main/pg_hba.conf

sudo vim /etc/postgresql/17/main/pg_hba.conf

最后心的一行增加

# 格式:host 数据库 用户 IP范围 认证方法
host    all             all             0.0.0.0/0               scram-sha-256
host    all             all             ::0/0                   scram-sha-256

防火墙端口 开启

ufw

sudo ufw allow 5432/tcp  # 默认 PostgreSQL 端口
sudo ufw reload

iptables

sudo iptables -A INPUT -p tcp --dport 5432 -j ACCEPT
sudo netfilter-persistent save  # 保存规则(Debian 默认工具)

最后重启 PostgreSQL

sudo systemctl restart postgresql
http://www.dtcms.com/a/39803.html

相关文章:

  • Idea java项目结构介绍
  • 使用插件 `vue2-water-marker`添加全局水印
  • 拐弯的时间线
  • 通过返回的key值匹配字典中的value值
  • C++ Primer Plus第八章课后习题总结
  • win11系统通过WSL安装ubuntu
  • 模电学习笔记
  • 服务端配置TCP探活,超出探活时间后的行为?
  • 7.grafana的内存和CPU同时在一个表中的调整
  • 汽车悬架系统技术演进:从被动到全主动的革新之路(主动悬架类型对比)
  • 【单片机】MSP430MSP432入门
  • 大白话Vuex 核心概念(state、mutations、actions)的使用案例与原理
  • vue项目中动态添加类名样式不生效问题
  • 2025-02-26 学习记录--C/C++-C语言 整数格式说明符
  • 简单介绍JVM
  • Flutter系列教程之(6)——Tab导航与ListView使用
  • Lua的table类型的增删改查操作
  • http 协议和 https 协议的区别是什么?
  • 【1分钟学会万相文生视频】windows环境4080显卡部署Wan2.1-T2V-1.3B,亲手实操
  • 【STL】7.STL常用算法(1)
  • miqiu的分布式锁(二):实战——用JMeter验证JVM锁能否解决MySQL超卖问题
  • element-ui的组件使用
  • 每日一题——字母异位词分组
  • 2024 年出现的 11 大数据收集趋势
  • spring boot 连接FTP实现文件上传
  • linux中根目录满了
  • C#开发的Base64编码及解码完整源码及注意事项
  • 【含开题报告+文档+PPT+源码】基于大数据的交通流量预测系统
  • 论软件设计模式及其应用-软考
  • 【算法】797. 差分