[macOS High Sierra][Homebrew] 安装及创建 PostgreSQL 数据库的步骤

环境

    • macOS High Sierra ( 10.13.x )

 

    • Ruby v2.3.4p301

 

    • Homebrew v1.5.4

 

    PostgreSQL v10.2

安装Homebrew

在命令行中执行以下命令来进行安装。

$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

安装PostgreSQL

在Homebrew中安装PostgreSQL。

$ brew install postgresql

自动启动和停止PostgreSQL服务

自动启动

通过下列命令,设置自动启动PostgreSQL。这将使PostgreSQL在启动时启动,并在macOS重新启动或登录时自动启动。

$ brew services start postgresql

停下来

如果要停止PostgreSQL并停止自动启动,请执行以下命令。

$ brew services stop postgresql

用户创建

$ psql -U${USER} postgres

使用非超级用户登录PostgreSQL。环境变量${USER}是安装PostgreSQL时macOS的登录用户。不应该直接使用${USER}作为超级用户登录PostgreSQL,应该避免这种情况。

postgres=# create user postgres with SUPERUSER;
CREATE ROLE

为操作系统创建一个名为postgres的用户,该用户与OS的用户分开。

在创建用户时,使用SUPERUSER参数注明,以赋予该用户超级用户权限。
如果不使用带有SUPERUSER的参数进行创建,将无法授予特殊权限,如数据库创建权限等。

数据库连接

请确认是否能使用刚刚创建的用户登录。

$ psql -Upostgres

当出现以下提示时,登录成功。

psql (10.2)
Type "help" for help.

postgres=# 

此外

postgres=# \l
                                    List of databases
   Name    |  Owner   | Encoding |   Collate   |    Ctype    |     Access privileges     
-----------+----------+----------+-------------+-------------+---------------------------
 postgres  | ${USER}  | UTF8     | en_US.UTF-8 | en_US.UTF-8 | 
 template0 | ${USER}  | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/"${USER}"            +
           |          |          |             |             | "${USER}"=CTc/"${USER}"
 template1 | ${USER}  | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/"${USER}"            +
           |          |          |             |             | "${USER}"=CTc/"${USER}"
(3 rows)

通过输入psql元命令¥l,确认可以获取数据库列表。

创建数据库

提供命令行创建以及登录PostgreSQL并创建的方法。

通过命令行创建的方法

使用命令行指定 postgres 作为所有者来创建数据库 hogehoge。

$ createdb hogehoge -O postgres;
    • -O [オーナー] or (–owner)

作成するデータベースの所有者となるユーザを指定

在PostgreSQL中登录并创建的方法

使用 PostgreSQL 登录并指定 postgres 作为所有者创建数据库 hogehoge2。

$ psql -Upostgres
psql (10.2)
Type "help" for help.

postgres=# create database hogehoge2 owner=postgres;
CREATE DATABASE

查看数据库列表

当使用前面提到的 psql 元命令 ¥l 来确认数据库列表时。

postgres=# \l
                                    List of databases
   Name    |  Owner   | Encoding |   Collate   |    Ctype    |     Access privileges     
-----------+----------+----------+-------------+-------------+---------------------------
 hogehoge  | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | 
 hogehoge2 | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | 
 postgres  | ${USER}  | UTF8     | en_US.UTF-8 | en_US.UTF-8 | 
 template0 | ${USER}  | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/"${USER}"            +
           |          |          |             |             | "${USER}"=CTc/"${USER}"
 template1 | ${USER}  | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/"${USER}"            +
           |          |          |             |             | "${USER}"=CTc/"${USER}"
(4 rows)

可以确认 先前创建的数据库 hogehoge 和 hogehoge2 的所有者是 postgres。

请总结一下

我成功在 macOS(High Sierra(10.13.x))上安装了PostgreSQL并创建了用户~确认了数据库的创建。
现在,PostgreSQL的运行环境已经基本搭建完成,接下来可以按照手册创建表格,然后用于应用程序开发。

请参考。

    • PostgreSQL macOS packages

 

    • Homebrew

 

    オープンソースデータベース標準教科書 -PostgreSQL- (Ver1.0.1)
bannerAds