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

内网开发福音:保姆级教程,用一台能上网的Ubuntu搞定另一台机器的PostgreSQL 14离线安装

内网开发福音保姆级教程用一台能上网的Ubuntu搞定另一台机器的PostgreSQL 14离线安装在企业的开发和生产环境中内网隔离是常见的安全策略。但这也带来了一个现实问题如何在内网机器上安装像PostgreSQL这样的关键数据库服务本文将介绍一种高效的双机协作方案利用一台能上网的Ubuntu机器为内网环境准备完整的PostgreSQL 14离线安装包。1. 准备工作与环境配置1.1 确认系统版本首先需要确保两台机器使用相同版本的Ubuntu系统。可以通过以下命令检查lsb_release -a输出示例No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 20.04.4 LTS Release: 20.04 Codename: focal关键点确保两台机器的Codename一致如都是focal推荐使用LTS版本20.04或22.041.2 安装必要工具在上网机器上安装后续操作所需的工具sudo apt update sudo apt install -y apt-rdepends wgetapt-rdepends是分析依赖关系的关键工具而wget用于下载PG仓库密钥。2. 构建完整的离线安装包2.1 添加PostgreSQL官方仓库在上网机器上执行以下命令添加PG官方仓库sudo sh -c echo deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main /etc/apt/sources.list.d/pgdg.list wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add - sudo apt update2.2 确定要安装的版本检查可用的PostgreSQL版本apt-cache show postgresql | grep Version典型输出Version: 14243.pgdg20.041 Version: 12214ubuntu0.1 Version: 122142.3 分析依赖关系使用apt-rdepends分析完整依赖树apt-rdepends postgresql-14 dependencies.txt关键依赖通常包括postgresql-client-14postgresql-commonlibpq5pgdg-keyring2.4 下载所有依赖包创建下载脚本download.sh#!/bin/bash packages( postgresql-14 postgresql-client-14 postgresql-common postgresql-client-common libpq5 pgdg-keyring ) for pkg in ${packages[]}; do apt download $pkg done运行脚本后当前目录会生成所有需要的.deb文件。3. 离线安装与问题排查3.1 传输文件到内网机器将下载的.deb文件打包传输tar czvf pg14-offline.tar.gz *.deb然后通过U盘或内部文件共享服务将压缩包传输到内网机器。3.2 安装顺序与依赖处理在内网机器上按特定顺序安装先安装keyringsudo dpkg -i pgdg-keyring_*.deb安装common包sudo dpkg -i postgresql-client-common_*.deb sudo dpkg -i postgresql-common_*.deb处理依赖sudo apt --fix-broken install安装主程序sudo dpkg -i postgresql-client-14_*.deb sudo dpkg -i libpq5_*.deb sudo dpkg -i postgresql-14_*.deb3.3 常见问题解决问题1缺少标准库依赖解决方案sudo apt --fix-broken install问题2locale配置警告解决方法sudo locale-gen en_US.UTF-84. 验证与优化配置4.1 验证安装检查服务状态sudo systemctl status postgresql连接测试sudo -u postgres psql -c SELECT version();4.2 基础安全配置修改postgres用户密码sudo -u postgres psql -c ALTER USER postgres WITH PASSWORD your_password;调整监听地址sudo sed -i s/#listen_addresses localhost/listen_addresses */ /etc/postgresql/14/main/postgresql.conf4.3 性能调优建议根据内存调整配置sudo nano /etc/postgresql/14/main/postgresql.conf推荐参数4GB内存机器shared_buffers 1GB effective_cache_size 3GB maintenance_work_mem 256MB5. 高级技巧与自动化方案5.1 一键下载脚本创建完整的下载脚本download_all.sh#!/bin/bash set -e # 获取所有依赖 deps$(apt-rdepends postgresql-14 | grep -v ^ | sort | uniq) # 下载所有包 for dep in $deps; do apt download $dep 2/dev/null || echo Skipping $dep (not found) done5.2 制作本地仓库更专业的做法是创建本地APT仓库sudo apt install -y dpkg-dev mkdir pg14-repo mv *.deb pg14-repo cd pg14-repo dpkg-scanpackages . /dev/null | gzip -9c Packages.gz在内网机器上添加源echo deb [trustedyes] file:/path/to/pg14-repo ./ | sudo tee /etc/apt/sources.list.d/pg14-local.list sudo apt update5.3 容器化方案对于需要频繁部署的场景考虑使用Docker# 在上网机器上拉取镜像 docker pull postgres:14 # 保存镜像 docker save postgres:14 -o postgres14.tar # 在内网机器加载 docker load -i postgres14.tar
http://www.gsyq.cn/news/1414494.html

相关文章:

  • 从静止到500km/h:揭秘5G NR PRACH中‘限制集’如何应对高速移动挑战
  • Jeecg-Boot v3.4.2 微服务实战:从Online表单到独立服务的完整链路拆解
  • 即时通讯平台测试报告
  • 告别单调终端:手把手教你用PS1变量打造高颜值Linux命令行(附常用配色方案)
  • 智能家居自动化核心:从事件驱动架构到触发器、条件、动作实战
  • Claude Code 在大型代码库里的工程实践
  • 电商首页的可维护实现
  • 如何为你的桌面添加一只会打字的可爱猫咪:BongoCat完整指南
  • 终极指南:如何用STM32微控制器打造智能咖啡机控制系统
  • 鹰角网络的“慢哲学”:一家“不太想赚钱”的二次元传奇
  • 长沙秦义租赁:望城升降车租赁公司有哪些 - LYL仔仔
  • windows11右键无法新建文本文档的两种简单解决方法
  • 高性能后台管理前端架构设计:基于Layuimini的企业级解决方案
  • UWPHook:Windows UWP游戏与Steam平台无缝集成的技术解决方案
  • 告别折腾!Arch Linux + Xfce4 下 Fcitx5 中文输入法最全配置指南(含字体、环境变量、GUI工具)
  • 3个秘密让Adobe软件瞬间变免费:GenP神器如何改写你的创意工作流?
  • 如何用LayerDivider在5分钟内实现智能图像分层:设计师的AI助手
  • 高通跃龙IQ-9100平台的极限压力测试(1): 测试方案设计与多路4K视频解码压测
  • 3分钟掌握:全能网页媒体资源捕获器实战指南
  • 如何用IDR快速逆向Delphi程序:3个步骤掌握静态分析核心技术
  • Gemini多语言质量天花板在哪?:来自Linguistic QA团队的217项人工评估维度与TOP3致命缺陷
  • 2026 美团礼品卡回收折扣区间及平台报价解析 - 京顺回收
  • CI/CD 与 DevOps 三
  • 猫抓Cat-Catch:3分钟掌握浏览器媒体资源捕获神器
  • 税费前置展示普及之后跨境卖家如何减少结算阶段心理落差
  • 【Linux IO模型】Linux IO模型详解:阻塞/非阻塞/IO多路复用、Epoll源码实战,吃透百万并发服务器核心原理
  • dundeegdu:Go 语言实现的磁盘使用分析工具
  • VideoCrafter2完整教程:从零开始掌握AI视频生成技术
  • Veo 2 HDR元数据错位引发的暗部信噪比断崖式下跌(实测DNxHR 444XQ下-14.2dB→-28.7dB),紧急补丁已限时开放下载
  • Spring AI 入门教程