当前位置: 首页 > 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

相关文章:

  • 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)
  • 搜狗推广管家下载/百度关键词优化
  • 北京网站优化提供商/短链接生成器
  • 市住房和城乡建设委员会官方网站/seo工作
  • 大连甘井子区租房/广州aso优化公司 有限公司
  • 网站软文标题/重庆森林讲的什么内容
  • 自己的卡盟网站怎么做分站/seo短视频网页入口引流免费