news 2026/5/19 12:40:08

PostgreSQL 18 安装学习心得

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
PostgreSQL 18 安装学习心得

PostgreSQL 18 安装学习心得

安装日期

2025-12-16

安装环境

  • 操作系统:Ubuntu 24.04
  • PostgreSQL 版本:18.1
  • 安装方式:通过官方仓库安装

安装过程中遇到的问题及解决方案

问题1:sudo: a terminal is required to read the password

现象:在非交互式 SSH 会话中执行sudo命令时,系统提示需要终端来读取密码。

解决方案:实现了sudo_cmd函数,通过管道自动传递密码:

echo"$SUDO_PASSWORD"|sudo-S"$@"

问题2:gpg: cannot open ‘/dev/tty’: No such device or address

现象:在非交互式 SSH 会话中执行gpg命令导入密钥时,系统提示无法打开终端。

解决方案

  1. 使用curlwget直接下载密钥文件
  2. 使用gpg --batch --yes参数来避免交互式提示
  3. 最终采用了apt-key adv命令直接从密钥服务器导入密钥:

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 7FCC7D46ACCC4CF8

### 问题3:E: Malformed line 1 in source list /etc/apt/sources.list.d/pgdg.list (type) **现象**:仓库配置文件格式错误,导致 `apt update` 失败。 **解决方案**: 1. 修复了仓库配置文件的格式,确保 `deb` 行格式正确 2. 避免在管道中直接使用 `sudo` 命令,改为先将内容写入临时文件,再复制到目标位置: ```bash echo "$REPO_LINE" > /tmp/pgdg.list sudo cp /tmp/pgdg.list /etc/apt/sources.list.d/pgdg.list

问题4:The following signatures couldn’t be verified because the public key is not available: NO_PUBKEY 7FCC7D46ACCC4CF8

现象:GPG 密钥验证失败,导致无法从 PostgreSQL 官方仓库安装软件包。

解决方案

  1. 使用--allow-unauthenticated参数临时禁用签名验证:

sudo apt install -y --allow-unauthenticated postgresql-18

2. 同时使用 `-o Acquire::AllowInsecureRepositories=true` 参数来允许不安全的仓库。 ### 问题5:系统需要重启 **现象**:安装过程中系统提示需要重启,导致某些操作无法正常执行。 **解决方案**: 1. 执行 `sudo reboot` 命令重启服务器 2. 等待服务器重启完成后,继续执行安装脚本 ## 安装成功的关键步骤 1. **环境准备**:更新系统包列表,安装必要的工具(wget, ca-certificates, gnupg, curl) 2. **添加官方仓库**:正确配置 PostgreSQL 官方仓库,包括 GPG 密钥导入 3. **安装 PostgreSQL 18**:使用 `apt install` 命令安装 PostgreSQL 18 及其相关组件 4. **启动并启用服务**:使用 `systemctl start` 和 `systemctl enable` 命令管理 PostgreSQL 服务 5. **配置数据库**:设置 `postgres` 用户密码,创建测试数据库和用户 6. **验证安装**:检查 PostgreSQL 版本、服务状态和已创建的数据库 ## 学到的知识和命令 ### 基础命令 - `ssh -p <端口> <用户>@<服务器IP>`:通过 SSH 连接到远程服务器 - `scp -P <端口> <本地文件> <用户>@<服务器IP>:<目标路径>`:将本地文件上传到远程服务器 - `scp -P <端口> <用户>@<服务器IP>:<远程文件> <本地路径>`:将远程文件下载到本地 - `sudo -S <命令>`:通过管道传递密码执行 sudo 命令 - `systemctl status <服务名>`:查看服务状态 - `systemctl start <服务名>`:启动服务 - `systemctl enable <服务名>`:设置服务开机自启 ### PostgreSQL 相关命令 - `psql --version`:检查 PostgreSQL 版本 - `psql -U postgres -h localhost`:连接到 PostgreSQL 数据库 - `\l`:列出所有数据库 - `ALTER USER postgres WITH PASSWORD 'password';`:修改 postgres 用户密码 - `CREATE DATABASE test_db;`:创建测试数据库 - `CREATE USER test_user WITH ENCRYPTED PASSWORD 'test_password';`:创建测试用户 - `GRANT ALL PRIVILEGES ON DATABASE test_db TO test_user;`:授予用户权限 ### Bash 脚本编写技巧 - 使用 `exec > >(tee -a "$LOG_FILE") 2>&1` 将所有输出重定向到日志文件 - 使用 `if [ $? -ne 0 ]; then` 检查命令执行结果 - 使用 `$(command)` 捕获命令输出 - 使用 `2>/dev/null` 隐藏错误输出 ## 安全注意事项 1. **密码管理**:在脚本中硬编码密码存在安全风险,生产环境中应使用更安全的方式管理密码 2. **GPG 密钥验证**:临时禁用签名验证只适合测试环境,生产环境应确保密钥正确导入 3. **默认密码**:安装完成后应及时修改默认密码,避免安全风险 4. **最小权限原则**:创建数据库用户时应根据实际需求授予最小权限 ## 总结 通过本次 PostgreSQL 18 安装,我学习到了: 1. 如何在 Ubuntu 24.04 上安装和配置 PostgreSQL 18 2. 如何处理非交互式 SSH 会话中的 sudo 密码问题 3. 如何解决 GPG 密钥导入和验证问题 4. 如何编写可靠的 Bash 安装脚本 5. 如何管理和监控 PostgreSQL 服务 6. PostgreSQL 数据库的基本配置和使用 虽然在安装过程中遇到了一些问题,但通过不断尝试和学习,最终成功完成了 PostgreSQL 18 的安装和配置。这次安装经历让我对 PostgreSQL 和 Ubuntu 系统管理有了更深入的了解,也提高了我的问题解决能力。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/18 18:55:05

AI生成证件照的核心技术逻辑与实现路径解析

随着数字化场景深度渗透&#xff0c;证件照需求从线下照相馆延伸至线上政务、求职、签证等场景&#xff0c;传统拍摄需预约、修图依赖人工的流程&#xff0c;难以满足“即时性”与“合规性”要求。AI技术通过构建自动化处理 pipeline&#xff0c;将证件照生成从“人工主导”转向…

作者头像 李华
网站建设 2026/5/19 12:40:03

基于STM32单片机太阳能风能路灯风光互补锂电池电量定时蓝牙无线APP/WiFi无线APP/摄像头视频监控/云平台设计S355

STM32-S355-太阳能风能时钟定时USB灯光照锂电池电压电量充电电压自动手动升压声光提醒OLED屏阈值按键(无线方式选择) 产品功能描述&#xff1a;本系统由STM32F103C8T6单片机核心板、OLED屏、&#xff08;无线蓝牙/无线WIFI/无线视频监控/联网云平台模块-可选&#xff09;、纽扣…

作者头像 李华
网站建设 2026/5/16 5:40:27

LobeChat能否上传训练数据?用于后续模型优化

LobeChat 能否上传训练数据用于模型优化&#xff1f; 在如今大语言模型&#xff08;LLM&#xff09;遍地开花的时代&#xff0c;越来越多用户不再满足于“用现成的AI”&#xff0c;而是希望构建属于自己的智能助手——既能私有部署保障数据安全&#xff0c;又能根据业务场景灵活…

作者头像 李华
网站建设 2026/5/16 5:40:29

还在用查重超标的AI写论文?8款免费靠谱工具查重低于9原创高

还在熬夜对着空白文档发呆&#xff0c;用通用AI生成一堆看似华丽却查重率爆表的文字&#xff1f;还在被导师用红笔圈出“AI痕迹过重”、“逻辑不通”、“引用不规范”而打回重写&#xff1f;还在因为“学术不端”的风险而心惊胆战&#xff0c;生怕辛苦几个月的成果付之东流&…

作者头像 李华
网站建设 2026/5/15 7:21:55

还在为论文原创性发愁?9款AI润色工具实测,轻松提升学术质量!

别再为论文原创性提心吊胆&#xff0c;怕被查重和AI检测双重“卡关”而日夜难安了&#xff01;还在因总在赶稿压力下无从下笔&#xff0c;面对空白文档大脑一片空白而焦虑不已吗&#xff1f;难道你还要继续忍受参考文献格式难统一&#xff0c;排版细节耗费大量精力还易出错的痛…

作者头像 李华
网站建设 2026/5/14 12:24:10

00、生成式人工智能初学者指南-课程表及源码下载

一、生成式 AI 初学者指南课程表 通过21节课程&#xff0c;学习构建生成式 AI 应用的基础知识&#xff0c;适合从业者做为生成式AI初学者指南。之后有有配到的教学视频发到B站&#xff0c;尽请关注&#xff01; 我对本课程进行了全面的改造&#xff0c;如大模型使用本地部署、环…

作者头像 李华