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.confpg_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_buffersmax_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_dumppg_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://test.idctop.com/article/423494.html

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

相关推荐

  • TeamViewer设备组权限如何设置?权限管理教程

    在TeamViewer设备组中,权限管理的核心在于通过“组策略”将管理员权限下放给特定用户,从而实现分级管控与远程协助的平衡,很多IT管理员在部署TeamViewer时,往往只关注如何连接设备,却忽略了权限分配的精细度,当企业设备数量超过50台时,手动逐个授权不仅效率低下,还容易引发安全漏洞,通过设备组(Dev……

    2026年6月23日
    2300
  • 互联网区块链溯源服务网络真的可靠吗?区块链溯源技术原理

    互联网区块链溯源服务网络通过不可篡改的技术底座,彻底解决了传统供应链中信息孤岛与信任缺失的痛点,是实现商品全生命周期透明化管理的最佳方案,想象一下,你买到的进口奶粉,从新西兰牧场到国内货架,每一个环节的数据都像被上了锁的日记本,任何人都无法事后涂改,这就是互联网区块链溯源服务网络正在做的事情,它不仅仅是一个技术……

    2026年6月2日
    3700
  • 如何用HTML制作门户网站?搭建门户网站需要掌握哪些技术

    使用HTML制作门户网站的核心在于构建语义化结构、优化加载速度及适配移动端,这比依赖复杂CMS系统更能提升百度SEO排名,在2026年的互联网环境下,搜索引擎算法已经极度智能化,它不再仅仅抓取关键词密度,而是更看重页面的实际用户体验、内容权威性以及技术结构的规范性,对于想要通过HTML制作门户网站的企业或个人而……

    2026年6月7日
    3200
  • Access数据库扩展名是什么?access数据库文件后缀

    Access数据库的标准扩展名是.mdb(适用于2003及更早版本)和.accdb(适用于2007及更高版本),这一后缀标识了文件内部的数据存储结构与加密格式,在日常办公与小型项目开发中,数据库文件就像是一个个装满数据的“智能保险箱”,当你双击一个文件,系统需要知道用什么“钥匙”去打开它,而这个钥匙的标签,就是……

    2026年7月1日
    1700
  • 广告数据网站哪个好?免费查询广告数据的平台推荐

    在数字化营销浪潮中,数据已成为驱动决策的核心资产,而广告数据网站正是企业实现精准投放、提升ROI的关键工具,通过整合多维度数据、提供实时分析,这类平台帮助广告主快速洞察市场趋势,优化投放策略,最终实现降本增效,以下从核心价值、功能解析、选型标准及实战应用四个层面展开论证,核心价值:数据驱动决策,提升广告效率广告……

    2026年4月3日
    7900
  • 美国高防服务器大带宽套餐怎么选?美国高防服务器租用多少钱

    2026年选择美国高防服务器大带宽套餐,核心在于平衡抗D能力与带宽稳定性,推荐优先考虑配备BGP多线接入且支持Tbps级清洗能力的独立IP方案,以应对日益复杂的DDoS攻击并保障海外业务流畅度,为什么2026年需要专门的高防大带宽套餐随着全球网络攻击手段的升级,普通服务器在面对大规模流量冲击时显得捉襟见肘,对于……

    2026年6月17日
    2400
  • 广州6g高防虚拟主机租用,广州高防虚拟主机哪家好?

    在广州地区寻求网站高速稳定运行与强力安全防护的终极解决方案,核心在于精准选型与配置高性能的防御型主机,广州6g高防虚拟主机租用服务,凭借其地域网络优势与T级防御能力,已成为华南地区企业构建安全数字资产的首选方案, 相比于传统虚拟主机,这种高配防御型产品不仅解决了带宽瓶颈,更从根本上防御了DDoS、CC等恶意攻击……

    2026年4月1日
    8100
  • 广安自动化数据库迁移怎么做?广安数据库迁移方案推荐

    广安地区企业数字化转型的核心在于数据流转的高效与安全,自动化数据库迁移已成为实现业务无缝升级的关键路径,传统的手动迁移方式风险高、停机时间长,已无法适应现代企业对业务连续性的严苛要求,通过引入自动化工具与专业服务,企业能够将迁移风险降至最低,实现数据的平滑过渡,这不仅是一次技术升级,更是企业核心竞争力的重塑,自……

    2026年4月1日
    7600
  • access筛选唯一数据库怎么操作?access查询不重复记录

    在Access数据库中筛选唯一记录的核心方法是使用“查询设计视图”中的“去重”选项,或通过SQL语句配合DISTINCT关键字,这是解决重复数据最标准且高效的方案,很多开发者在处理Access数据库时,都会遇到数据冗余的困扰,当表结构不够严谨,或者从外部导入数据时,重复行就像杂草一样滋生,不仅占用存储空间,更会……

    2026年7月3日
    2700
  • html网站免费模板哪里找?免费html模板下载

    HTML网站免费模板是快速搭建静态页面的最佳起点,但需警惕代码冗余与移动端适配问题,建议优先选择语义化标签清晰、响应式布局成熟的开源模板,对于许多初创团队、个人开发者以及小型企业而言,从零编写每一行HTML代码既耗时又昂贵,寻找现成的HTML网站免费模板,成为了解决“有想法没技术”或“有预算没人力”困境的捷径……

    2026年6月7日
    4300

发表回复

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