在本教程中,您将学习如何在UbuntuLinux上安装和使用开源数据库PostgreSQL。PostgreSQL(也称为Postgres)是一个功能强大的免费开源关系数据库管理系统(RDBMS),在可靠性、稳定性和性能方面在业界享有很高的声誉。它旨在处理各种规模的任务。它是跨平台的,是macOS服务器上的默认数据库。如果您喜欢易于使用的SQL数据库管理器,那么PostgreSQL将是正确的选择。PostgreSQL在兼容标准SQL的同时提供了额外的附加功能,也可以被用户极大地扩展。用户可以添加数据类型、函数并执行更多操作。我之前介绍过在Ubuntu上安装MySQL。在本文中,我将向您展示如何安装和配置PostgreSQL,以便您可以随时使用它来满足您的任何需求。在Ubuntu上安装PostgreSQL可从Ubuntu主存储库获取PostgreSQL。但是,与许多其他开发工具一样,它可能不是最新版本。首先在终端中使用apt命令检查Ubuntu存储库中可用的PostgreSQL版本:aptshowpostgresql在我的Ubuntu18.04中它显示PostgreSQL的可用版本是10(10+190表示版本10)并且PostgreSQL版本11已经发布。Package:postgresqlVersion:10+190Priority:optionalSection:databaseSource:postgresql-common(190)Origin:Ubuntu根据这些信息,你可以决定是安装Ubuntu提供的版本还是获取最新发布的PostgreSQL。我将向您展示这两种方法:方法1:通过Ubuntu存储库安装PostgreSQL在终端中,使用以下命令安装PostgreSQL:sudoaptupdatesudoaptinstallpostgresqlpostgresql-contrib出现提示时输入密码,具体取决于您的网络取决于速度,程序将在几秒到几分钟内安装完毕。说到这里,请随意检查Ubuntu中的各种网络带宽。什么是postgresql-contrib?postgresql-contrib或contrib包包含一些不属于PostgreSQL核心包的实用程序和功能。在大多数情况下,最好将contrib包与PostgreSQL核心一起安装。方法2:在Ubuntu中安装最新版本的PostgreSQL11要安装PostgreSQL11,您需要在sources.list中添加官方PostgreSQL存储库和证书,然后从那里安装。别担心,这并不复杂。只需按照以下步骤操作。首先添加GPG密钥:wget--quiet-O-https://www.postgresql.org/media/keys/ACCC4CF8.asc|sudoapt-keyadd-现在,使用以下命令添加存储库。如果您使用的是LinuxMint,则必须手动替换Mint基于的Ubuntu版本号:sudosh-c'echo"debhttp://apt.postgresql.org/pub/repos/apt/`lsb_release-cs`-pgdgmain">>/etc/apt/sources.list.d/pgdg.list'现在一切就绪。使用以下命令安装PostgreSQL:sudoaptupdatesudoaptinstallpostgresqlpostgresql-contribPostgreSQLGUI应用程序您还可以安装用于管理PostgreSQL数据库的GUI应用程序(pgAdmin):sudoaptinstallpgadmin4PostgreSQLconfiguration您可以通过执行以下命令检查PostgreSQL是否已启用以下命令运行:servicepostgresqlstatus使用service命令,您可以启动、停止或重新启动postgresql。输入servicepostgresql并按回车键将列出所有选项。现在,登录该用户。默认情况下,PostgreSQL会创建一个具有所有权限的特殊用户postgres。要实际使用PostgreSQL,您必须首先登录到该帐户:sudosupostgres您的提示符将更改为类似于:postgres@ubuntu-VirtualBox:/home/ubuntu$现在,使用psql启动PostgreSQLShell:psqlyouYou应该看到这样的提示:postgress=#Youcantype\qtoquitand\?求助。要查看所有现有表,请输入以下命令:\l输出类似于以下内容(单击q键退出视图):PostgreSQLTables使用\du命令,您可以查看PostgreSQL用户:PostgreSQLUsers您可以使用以下命令更改任何用户(包括postgres)的密码:ALTERUSERpostgresWITHPASSWORD'my_password';注意:将postgres替换为您要更改的用户名,并将my_password替换为所需的密码。另外,不要忘记;(分号)在每个命令之后。建议您创建另一个用户(不建议使用默认的postgres用户)。为此,请使用以下命令:CREATEUSERmy_userWITHPASSWORD'my_password';运行\du,您将看到用户,但是,my_user用户没有任何属性。让我们给它添加超级用户权限:ALTERUSERmy_userWITHSUPERUSER;您可以使用以下命令删除用户:DROPUSERmy_user;要用另一个用户登录,用\q命令注销,然后用:psql-Umy_user你可以使用-d参数直接连接到数据库:psql-Umy_user-dmy_db你可以使用其他现有的用户调用PostgreSQL。比如我用的是ubuntu。要登录,请从终端执行以下命令:psql-Uubuntu-dpostgres注意:您必须指定一个数据库(默认情况下,它将尝试将您连接到与登录用户名相同的数据库)。如果遇到如下错误:psql:FATAL:Peerauthenticationfailedforuser"my_user"确保您以正确的用户身份登录并使用管理员权限编辑/etc/postgresql/11/main/pg_hba.conf:sudovim/etc/postgresql/11/main/pg_hba.conf注意:将11替换为您的版本(例如10)。将看起来像这样的行:localallpostgrespeer替换为:localallpostgresmd5然后重新启动PostgreSQL:sudoservicepostgresqlrestart使用PostgreSQL与使用其他SQL类型的数据库相同。由于本文旨在帮助您进行初始设置,因此不涵盖具体命令。但是,这里有一个非常有用的要点供参考!此外,手册(manpsql)和文档非常有用。结束语阅读本文有望指导您完成在Ubuntu系统上安装和准备PostgreSQL的过程。如果您不熟悉SQL,则应该阅读基本SQL命令。如果您有任何问题或疑虑,请随时在评论部分提问。
