如何在Arch Linux上安装PostgreSQL 11.1

安装 PostgreSQL 11.1 数据库安装 PostgreSQL:
# pacman -S postgresql如果运行 Btrfs 文件系统,则应考虑禁用数据库目录的写时复制:
# chattr +C /var/lib/postgres/data/该软件包postgres在您的系统上创建用户 。
初始化数据库集群 。这必须由新postgres用户完成,只要您的用户帐户使用 sudo 权限设置,此命令便会执行此操作:
$ sudo -iu postgres initdb -D /var/lib/postgres/data启动 PostgreSQL,并使其在每次启动后启动:
# systemctl enable --now postgresqlpostgres充当数据库根用户的数据库用户身份连接到 PostgreSQL :
# psql -U postgres然后设置一个密码:
postgres-# \password postgres现在退出:
postgres-# \q考虑防火墙您可能要考虑配置防火墙 。默认情况下,PostgreSQL 不仅会侦听5432来自 localhost 的端口,还会侦听您的公共 IP 地址上任何地方的端口 。PostgreSQL 也只会批准来自 localhost 的传入连接,但是外部尝试仍将到达 PostgreSQL 并出现以下错误:no pg_hba.conf entry for host
尽管 PostgreSQL 被认为是相当安全的,但除非绝对必要,否则防火墙甚至不向 PostgreSQL 服务器提供外部数据包也更加安全 。即使需要直接远程访问,使用防火墙阻止流量并使用 VPN 也会更加安全 。
准备升级默认情况下,pacman当通过运行以下命令升级整个 Arch 系统时,将在新版本发布到正式的 Arch 存储库时升级 PostgreSQL:
# pacman -Syu强烈建议配置pacman为不自动安装 PostgreSQL 升级 。当发布升级并升级整个 Arch 系统时,pacman将通知您有可用的新版本 。编辑/etc/pacman.conf,然后添加以下内容:
IgnorePkg= postgresql*处理次要版本升级当pacman显示您有次要版本升级时,例如11.011.1,PostgreSQL 的版本控制策略是您可以安全地执行升级 。就是说,最好先备份数据库 。
要执行次要升级,请停止 PostgreSQL 并确认它已停止:
# systemctl stop postgresql# systemctl status postgresql然后,强制升级软件包:
【如何在Arch Linux上安装PostgreSQL 11.1】# pacman -S postgresql postgresql-libs启动 PostgreSQL:
# systemctl start postgresql处理主要版本升级当pacman节目有重大版本升级,如11.x12.x,建议检查PostgreSQL 的网站,以及 Arch 的网站,看看是否有您必须执行正确的升级步骤 。过去,当 PostgreSQL 给出此类步骤时,跳过这些步骤将导致数据库无法正常工作 。强烈建议您首先备份数据库,因为这些升级的风险更大 。

    推荐阅读