本文介绍在Ubuntu操作系统上安装和配置PostgreSQL开源数据库的方法。如果你是一个简单易用的SQL数据库管理器的粉丝,PostgreSQL非常适合你使用,它支持SQL标准并提供其他功能,同时还可由用户进行大量扩展,因为用户可以添加数据类型,功能并执行更多操作。
在Ubuntu上安装PostgreSQL PostgreSQL在Ubuntu主存储库中可用,但是,与许多其他开发工具一样,它可能不是最新版本。 首先使用终端中的apt命令检查Ubuntu存储库中可用的PostgreSQL版本: apt show postgresql 在我的Ubuntu 18.04中,它显示PostgreSQL的可用版本是版本10(10+190表示版本10),而PostgreSQL 11版本已经发布,参考在Ubuntu 18.04/Ubuntu 16.04上安装PostgreSQL 11的说明: Package: postgresql Version: 10+190 Priority: optional Section: database Source: postgresql-common (190) Origin: Ubuntu 根据这些信息,你可以考虑是否要安装Ubuntu提供的版本,或者你想获得最新发布的PostgreSQL版本,下面介绍这两种方法。 方法1:从Ubuntu存储库安装PostgreSQL 在终端中,使用以下命令安装PostgreSQL: sudo apt update sudo apt install postgresql postgresql-contrib 介绍:什么是postgresql-contrib? postgresql-contrib或contrib包包含一些不属于核心PostgreSQL包的其他实用程序和功能,在大多数情况下,最好将contrib包与PostgreSQL核心一起安装。 方法2:在Ubuntu中安装PostgreSQL的最新版本11 要安装PostgreSQL 11,需要在sources.list中添加官方PostgreSQL存储库,添加其证书,然后从那里安装它,只需按照以下步骤操作。 首先添加GPG密钥: wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add - 现在使用以下命令添加存储库,如果你使用的是Linux Mint,则必须手动替换Mint版本所基于的Ubuntu版本的`lsb_release -cs`。 sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" >> /etc/apt/sources.list.d/pgdg.list' 现在一切都准备好了,使用以下命令安装PostgreSQL: sudo apt update sudo apt install postgresql postgresql-contrib 介绍:PostgreSQL GUI应用程序: 你还可以安装用于管理PostgreSQL数据库的GUI应用程序(pgAdmin): sudo apt install pgadmin4 参考:在Debian 10/Debian 9上安装pgAdmin 4的方法。
配置PostgreSQL 可以通过执行以下命令检查PostgreSQL是否正在运行: service postgresql status 通过service命令,还可以启动,停止或重新启动postgresql,键入服务postgresql并按Enter键应输出所有选项,现在,进入用户。 默认情况下,PostgreSQL创建一个具有所有权限的特殊用户postgres,要实际使用PostgreSQL,必须先登录该帐户: sudo su postgres 你的提示应更改为类似于: postgres@ubuntu-VirtualBox:/home/ubuntu$ 现在,使用实用程序psql运行PostgreSQL Shell: psql 系统会提示你: postgress=# 你可以输入\q来退出和\?求助。 要查看所有现有表,请输入: \l 输出看起来与此类似(点击键q退出此视图):
使用\du,可以显示PostgreSQL用户:
你可以使用以下命令更改任何用户(包括postgres)的密码: ALTER USER postgres WITH PASSWORD 'my_password'; 注意:将postgres替换为用户名,将my_password替换为所需密码。 建议你创建另一个用户(使用默认的postgres用户是不好的做法),为此,请使用以下命令: CREATE USER my_user WITH PASSWORD 'my_password'; 如果你运行\du,你会看到my_user还没有属性,让我们为它添加超级用户: ALTER USER my_user WITH SUPERUSER; 可以删除用户: DROP USER my_user; 要以其他用户身份登录,请退出提示符(\q),然后使用以下命令: psql -U my_user 你可以使用-d参数直接连接到数据库: psql -U my_user -d my_db 你应该像其他现有用户一样调用PostgreSQL用户,例如我用的是ubuntu,下面要登录,运行: psql -U ubuntu -d postgres 注意:你必须指定一个数据库(默认情况下,它会尝试将你连接到与你登录的用户名称相同的数据库)。 如果有错误: psql: FATAL: Peer authentication failed for user "my_user" 确保你以正确的用户身份登录并使用管理员权限编辑/etc/postgresql/11/main/pg_hba.conf: sudo vim /etc/postgresql/11/main/pg_hba.conf 注意:将11替换为你的版本(例如10)。 在这里,替换行: local all postgres peer With: local all postgres md5 然后重启PostgreSQL: sudo service postgresql restart 注:使用PostgreSQL与使用任何其他SQL类型数据库相同。
相关主题 |