Ubuntu怎么安装PostgreSQL?Ubuntu安装PostgreSQL图文教程

在Ubuntu上安装PostgreSQL最稳妥的方式是通过官方APT仓库配置安装,这能确保你获得最新的安全补丁和版本支持,而非使用系统默认仓库中可能过时的旧版本。

很多开发者在初次接触Linux服务器时,往往直接运行 apt install postgresql,虽然简单,但这种方法容易陷入版本滞后或配置混乱的困境,对于追求生产环境稳定性的团队来说,掌握官方源安装流程是基本功,本文将拆解从环境准备到服务验证的全流程,帮助你避开常见坑点,构建一个健壮的数据库基础。

如何在 Ubuntu Linux 上安装和配置 PostgreSQL
加载中
如何在 Ubuntu Linux 上安装和配置 PostgreSQL

Ubuntu安装PostgreSQL最佳实践路径

选择正确的安装源是成功的第一步,Ubuntu自带的软件源虽然方便,但其中的PostgreSQL版本通常比官方最新版本落后几个大版本,对于需要新特性或特定安全修复的用户,直接添加PostgreSQL官方APT仓库是业内共识认为的最佳方案。

配置官方APT仓库

你需要确保系统拥有必要的工具来添加新的软件源,打开终端,执行以下命令安装GPG密钥和依赖项:

sudo apt update
sudo apt install -y gnupg2 lsb-release curl

导入PostgreSQL项目的签名密钥,并添加官方仓库地址,这一步至关重要,它保证了后续下载的软件包来源可信且为最新。

curl -fsSL https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo gpg --dearmor -o /usr/share/keyrings/postgresql-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/postgresql-archive-keyring.gpg] http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" | sudo tee /etc/apt/sources.list.d/pgdg.list

执行完上述命令后,再次更新软件包列表,以刷新本地缓存中的新仓库信息。

Ubuntu怎么安装PostgreSQL?Ubuntu安装PostgreSQL图文教程

sudo apt update

选择并安装特定版本

你可以查看当前可用的PostgreSQL版本了,最新的LTS(长期支持)版本是生产环境的首选,如果你希望安装PostgreSQL 16,可以执行:

sudo apt install -y postgresql-16

如果你不确定该选哪个版本,建议查阅官方文档中的版本支持矩阵,多数情况下,选择带有”LTS”标识的版本能获得更长的技术支持周期,安装过程会自动创建名为 postgres 的系统用户和默认数据库集群。

初始化与基础配置详解

安装完成后,服务并不会立即自动启动到生产就绪状态,你需要了解如何管理这个服务,并进行初步的安全加固。

服务管理与状态检查

PostgreSQL在Ubuntu上通常由systemd管理,你可以使用以下命令来控制服务:

  • 启动服务:sudo systemctl start postgresql
  • 设置开机自启:sudo systemctl enable postgresql
  • 检查运行状态:sudo systemctl status postgresql

如果状态显示为 active (running),说明服务已正常启动,如果遇到错误,可以通过 journalctl -u postgresql 查看详细日志。

切换用户与访问数据库

PostgreSQL默认创建一个名为 postgres 的操作系统用户,要进入数据库交互界面,你需要切换到该用户。

sudo -i -u postgres
psql

进入 psql 提示符后,你可以执行SQL命令,查看当前版本:

SELECT version();

退出交互界面只需输入

Ubuntu怎么安装PostgreSQL?Ubuntu安装PostgreSQL图文教程

q 并回车。

配置远程访问权限

默认情况下,PostgreSQL只允许本地连接,如果你需要从其他机器访问数据库,需要修改两个关键配置文件:postgresql.conf 和 pg_hba.conf。

编辑 postgresql.conf,找到 listen_addresses 参数,将其修改为:

listen_addresses = ''

这意味着监听所有网络接口,编辑 pg_hba.conf,添加允许特定IP或网段访问的规则,允许来自 168.1.0/24 网段的连接:

host    all             all             192.168.1.0/24            md5

修改完成后,重启服务使配置生效:

sudo systemctl restart postgresql

常见问题排查与优化建议

在实际操作中,你可能会遇到连接失败或性能问题,以下是针对常见场景的解决方案。

防火墙配置

Ubuntu默认使用UFW防火墙,如果你启用了防火墙,必须开放PostgreSQL的默认端口 5432。

sudo ufw allow 5432/tcp
sudo ufw reload

确保你的云服务器安全组也放行了该端口,否则即使系统防火墙开放,外部依然无法连接。

内存与连接数调优

默认配置适用于开发环境,但在生产环境中,可能需要调整 shared_buffers 和 max_connections。

  • shared_buffers:建议设置为物理内存的25%左右,但不要超过总内存的40%。
  • max_connections:根据应用并发量调整,默认通常为100,如果应用连接数较多,可适当增加,但需注意内存消耗。
  • Ubuntu怎么安装PostgreSQL?Ubuntu安装PostgreSQL图文教程

这些参数位于 /etc/postgresql/16/main/postgresql.conf 中,修改后务必重启服务。

Ubuntu安装PostgreSQL常见疑问解答

Ubuntu安装PostgreSQL与MySQL相比有何优劣?

PostgreSQL以严格的SQL标准遵循性和强大的扩展能力著称,适合复杂查询和事务密集型应用,MySQL则在读写分离生态和简单CRUD场景下拥有更广泛的社区支持,业内专家指出,对于需要JSONB支持、地理空间数据(PostGIS)或复杂聚合分析的场景,PostgreSQL往往是更优选择,而在高并发简单读取、对写入速度要求极高的互联网应用中,MySQL依然占据主导地位,选择取决于具体业务需求,而非绝对的性能高低。

如何备份和恢复PostgreSQL数据库?

PostgreSQL提供了强大的命令行工具 pg_dump 和 pg_restore,备份单个数据库的命令如下:

pg_dump -U postgres -d mydb > mydb_backup.sql

恢复数据库时,先创建空数据库,然后导入:

createdb -U postgres mydb_new
psql -U postgres -d mydb_new < mydb_backup.sql

对于生产环境,建议使用 pg_basebackup 进行物理备份,并结合WAL归档实现时间点恢复(PITR),以确保数据安全性。

PostgreSQL在Ubuntu上的默认数据目录在哪里?

默认数据目录通常位于 /var/lib/postgresql/16/main/(版本号可能因安装版本而异),该目录包含数据库文件、事务日志和配置文件,切勿手动删除或移动该目录下的文件,否则会导致数据库损坏,如需更改数据目录,需在 postgresql.conf 中修改 data_directory 参数,并相应调整文件系统权限。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/ubuntu%e6%80%8e%e4%b9%88%e5%ae%89%e8%a3%85postgresql%ef%bc%9fubuntu%e5%ae%89%e8%a3%85postgresql%e5%9b%be%e6%96%87%e6%95%99%e7%a8%8b-2/

赞 (0)
Ubuntu怎么安装PostgreSQL?Ubuntu安装PostgreSQL图文教程
上一篇 2026年6月25日 18:58
如何用SEMrush优化Shopify SEO?Shopify SEO优化技巧有哪些
下一篇 2026年6月25日 19:01

相关推荐

  • PD虚拟机如何安装SAI?,SAI绘画软件运行教程

    在PD虚拟机(Parallels Desktop)中安装SAI绘画软件,核心思路是创建Windows虚拟机并正确配置图形与输入设备,全程约需20分钟即可流畅运行,为什么要在PD虚拟机里装SAI:先搞清你的真实需求很多用Mac的朋友都遇到过同一个尴尬:想用SAI画图,但SAI只有Windows版本,有人选择换电脑……

    2026年9月1日
    300
  • FTP端口20和21到底有啥区别?FTP主动模式与被动模式区别

    FTP端口21用于发送控制指令和建立连接,而端口20专用于在主动模式下传输实际文件数据,两者分工明确,缺一不可,理解FTP(文件传输协议)的工作机制,就像理解一家快递公司的运作流程,端口21是客服前台,负责接收你的指令、验证身份、协商传输模式;端口20则是货运卡车,负责在双方同意“主动模式”时,真正搬运那些庞大……

    2026年6月20日
    4000
  • space后缀是什么网站?space域名如何注册

    .space后缀是一个由国际顶级域名注册局Space Registry LLC管理的通用顶级域名(gTLD),主要面向太空探索、科技初创及创意产业,其注册流程与常规域名类似,但因其稀缺性和特定行业属性,价格通常高于普通.com域名,在2026年的互联网生态中,域名不仅是网站的入口,更是品牌资产的核心组成部分,随……

    2026年6月21日
    6600
  • 百度快照更新删除功能正式恢复,百度快照删除后多久能恢复

    百度快照更新与删除功能已正式恢复,这意味着网站内容的抓取时效性显著增强,站长可通过主动提交和合规优化加速收录,而非被动等待系统自动索引,对于许多长期关注搜索引擎动态的站长来说,这一消息无疑是一颗定心丸,过去几年里,由于算法升级和反作弊机制的强化,百度对快照的展示策略趋于保守,导致不少中小网站在内容更新后面临“收……

    2026年6月18日
    2300
  • 服务器由哪些核心组件构成,主板型号怎么选?

    服务器就是一台专门为其他设备提供计算、存储和网络服务的特殊电脑,它的核心硬件组件包括CPU、内存、主板、硬盘、阵列卡、电源和网卡这七大部分,核心计算组件:CPU和内存服务器最核心的计算单元由CPU和内存构成,CPU是服务器的大脑,负责处理所有运算指令,当前主流服务器CPU市场由Intel Xeon和AMD EP……

    服务器宽带 2026年10月23日
    000
  • PuTTY日志怎么记录?PuTTY开启日志保存路径

    PuTTY的日志记录功能通过“会话设置”中的“日志”选项卡开启,支持将终端所有输入输出保存为文本文件,是排查远程连接故障和审计操作行为的最高效手段,很多刚接触Linux服务器管理的开发者,面对黑底白字的终端界面时,往往只关注命令是否执行成功,却忽略了背后可能隐藏的连接中断、权限报错或编码乱码问题,当服务器突然无……

    2026年6月25日
    1700
  • 时尚行业如何用视觉叙事释放设计潜力?CFD文件是什么

    时尚品牌通过整合3D仿真与视觉叙事,不仅能将设计迭代周期缩短一半以上,更能以低成本实现高沉浸感的品牌故事传播,在2026年的时尚语境中,单纯的视觉美感已不足以支撑品牌的长期竞争力,消费者不再满足于静态的图片展示,他们渴望进入一个可感知、可互动甚至可“触摸”的数字世界,.CFD(计算流体动力学)技术不再仅仅是服装……

    2026年6月23日
    2300
  • 我的起源究竟有哪些服务器,哪个服最火爆?

    《我的起源》的服务器主要分为官方服、渠道服和平台专服三大类,不同渠道下载的客户端对应不同服务器分区,选择的关键在于账号传承和同区玩家规模,那么具体有哪些服务器呢?从客户端入口来看,你从哪个应用商店下载游戏,几乎就决定了你会进入哪一套服务器,我的起源官方服和渠道服的区别先说结论:如果你想长期玩,优先考虑官方服,其……

    2026年10月5日
    200
  • 服务器应用平台有哪些比较好,服务器应用平台哪个好用?

    想弄清“服务器应用平台有哪些”,结论先放在这里:市面上可供选择的无非三大类,传统物理服务器、云服务器,以及容器与Serverless平台, 三者各有各的适用场景,多数互联网公司的实际架构往往是它们的组合,服务器应用平台有哪些?先分清三大主流类型很多刚做网站或应用的人,第一反应是“买台服务器,装上Linux,然后……

    2026年10月16日
    000
  • 期货交易服务器有哪些品牌,哪个平台更稳定

    托管在交易所机房的物理服务器、云服务器、自建本地服务器,选择关键依据是交易频率与延迟敏感度,期货交易服务器的三种主流类型机房托管服务器:把机器搬进交易所就是将自有物理服务器放到期货交易所或高等级IDC机柜里,比如上海期货交易所张江机房附近,指令通过光纤直接进入撮合系统,物理距离最短,延迟能压到微秒级,适合人群……

    2026年10月10日
    000

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注