PostgreSQL 9.5:快速入门 Fedora 24

PostgreSQL 是最受欢迎的之一 对象关系数据库管理系统 (缩写为 ORDBMS)并且是 100% 开源的。 它不再纯粹是关于关系:PostgreSQL 也越来越多地与 NoSQL 相关。 以下文章是在 PostgreSQL 9.5 上设置的简短教程 Fedora 24,所以它可以用于开发环境。 对于生产部署,建议使用不同的设置并强化服务。

PostgreSQL 数据库包集在 Fedora的稳定存储库几乎与上游 RPM 集相同。 里面有客户端工具

PostgreSQL

包裹。 客户端库中

postgresql 库

包裹 经常需要各种连接器。 数据库最重要的部分,守护进程,在

postgresql 服务器

包裹。 通过在终端中运行以下命令,可以列出更多的服务器端扩展、工具或支持包。

$ dnf list postgresql*

基本的 部署示例可以在文章中找到 Fedora 维基 也是。 一些第一步也描述在 Fedora 开发者门户.

基本 PostgreSQL 设置

首先安装包,初始化数据目录,然后启动守护进程。

$ sudo dnf install postgresql-server
$ sudo postgresql-setup --initdb
$ sudo systemctl start postgresql

现在,通过切换到使用超级用户连接

postgres

用户通过

. 为此超级用户设置密码。

$ su - postgres
$ psql
 psql (9.5.3)
 Type "help" for help.

 postgres=# password postgres

创建用户和数据库

连接到数据库不是一个好主意

postgres

来自应用程序的超级用户(就像您在 Linux 中并非一直以 root 用户身份工作)。 为此,我们需要一个数据库和一个单独的用户来访问该数据库。 使用以下命令创建它们。

$ createuser john -P
$ createdb --owner=john mydb

我们还想限制仅从 localhost 到服务器的连接。 编辑

/var/lib/pgsql/data/pg_hba.conf

看起来像下面 example 下面来做到这一点。

# TYPE DATABASE USER     ADDRESS      METHOD
 host  all      all      127.0.0.1/32 md5
 host  all      all      ::1/128      md5
 local all      postgres              peer

此配置允许所有提供密码(特定于 PostgreSQL)的用户从 localhost 进行连接。 它允许

postgres

用户(又名超级用户)连接,以防同一用户在操作系统中进行身份验证(

su – postgres

)。 有关这方面的更多详细信息,请参阅上游 文件.

现在我们可以重新启动 PostgreSQL 服务器,以便应用更改的配置。

$ sudo systemctl restart postgresql

我们都准备好使用

约翰

访问数据库的用户

数据库

现在。

$ psql -h localhost -U john mydb
Password for user john: 
psql (9.5.3)
Type "help" for help.

mydb=> _

此时,您可以根据需要使用数据库:创建表,然后填充数据,等等。

容器中的 PostgreSQL

Linux 容器(尤其是 Docker)正在慢慢接近生产系统。 毫不奇怪,有一个 PostgreSQL Docker 镜像由 Fedora. 来源可在 Fedora-dockerfiles 存储库。 该图像位于

fedora/postgresql

码头工人中心. 在不接触系统其余部分的情况下启动一个服务 PostgreSQL 的容器很容易。

安装并运行 Docker 守护程序。

$ sudo dnf install docker
$ sudo systemctl start docker

拉出图像。

$ sudo docker pull fedora/postgresql

为数据准备目录。

$ sudo mkdir data
$ sudo chown 26:26 data
$ sudo chcon -t svirt_sandbox_file_t data

使用一些参数启动容器。 容器使用准备好的目录将数据存储到并创建用户和数据库。

$ sudo docker run -v "`pwd`/data:/var/lib/pgsql/data:Z" -e POSTGRESQL_USER=john -e POSTGRESQL_PASSWORD=secret -e POSTGRESQL_DATABASE=mydb -d -p 5432:5432 fedora/postgresql

现在您将 PostgreSQL 作为容器运行,同时将数据存储到

数据

当前工作目录中的目录。

有一些反馈吗?

目前为止就这样了! 我们很高兴听到您在 PostgreSQL 上的体验 Fedora. 你有遇到什么困难吗? 您想要更多版本(不仅是最新版本)吗? 关于 PostgreSQL 或其他数据库还有什么其他的吗? 请随意使用此处的评论或直接与我联系。

图标提供: 数据库 经过 凯文·伍德兰名词项目, 火箭 经过 桑德拉 M名词项目