MacへPostgreSQLをインストールしてみた

f:id:hira98:20190524211254j:plain

【結論】

  • MacPostgreSQLをインストールする手順をまとめた。

  • PostgreSQLとはCだけで書かれたOSSORDBMSである。

  • Macにソフトを追加する際は、Homebrewを使ったほうがいい。

【目次】

PostgreSQLとは?

ウィキペディアには次のように書いていました。

PostgreSQL(ぽすとぐれすきゅーえる: 発音例)はオープンソースオブジェクト関係データベース管理システム (ORDBMS) である。

プログラミング言語 C

引用:ウィキペディア PostgreSQL

因みに似たような位置付けにいる思っていた、MySQLには次のように書いていました。

MySQL(まい・えすきゅーえる)は、オープンソースで公開されている関係データベース管理システム (RDBMS) の一つである。

プログラミング言語 C, C++

引用:ウィキペディア MySQL

RDBMSは良く聞くけど、ORDBMSとか初めて聞きました。どちらも、SQL使える程度の認識しかなかったの驚きです。

Spring徹底入門』に載っているチュートリアルPostgreSQL使っていたから仕方なく入れただけなのに、まさかこんな発見があるとは思っていませんでした。

因みに、開発言語も載せているのは僕の趣味です。

PostgreSQLの導入編

Homebrewを使ってインストールする。

# インストール
$ brew install postgresql

# 文字コードをUTF-8に設定する
$ initdb /usr/local/var/postgres -E utf8

# バージョンチェック
$ postgres --version

DBの置き場所を環境変数に設定する。

bashを使っている場合は、.~/.bash_profileに次の内容を追記します。

# PostgreSQL設定(DBの置き場所)
export PGDATA=/usr/local/var/postgres

PGDATAを設定するのはPostgreSQLを使う上での伝統みたいです。

(普段は理由を深追いしたがる僕ですが、伝統であれば脳死させて従うことにします。)

伝統的に、データベースクラスタで利用される制御ファイルとデータファイルは、クラスタのデータディレクトリ内に一緒に格納され、通常(このディレクトリを定義するために使用できる環境変数名にちなんで)PGDATAとして参照されます。 通常のPGDATAの位置は/var/lib/pgsql/dataです。 異なるサーバインスタンスによって管理することで、複数のクラスタを同一のマシン上に存在させることができます。

引用:PostgreSQL 9.4.5文書 第 59章データベースの物理的な格納

PostgraseSQLを起動する

# PostgreSQLがstopped状態であることを確認
$ brew services list
Name       Status  User  Plist
postgresql stopped  

# PostgreSQLを起動する。
# 一度実行すれば再起動時も自動で起動する。
$ brew services start postgresql
==> Successfully started `postgresql` (label: homebrew.mxcl.postgresql)

# PostgreSQLがstated状態になっていることを確認。
# (念の為、PC再起動して確認してみましたが、きちんとstatedのままでした。)
$ brew services list
Name       Status  User  Plist
postgresql started hirao /Users/hirao/Library/LaunchAgents/homebrew.mxcl.postgresql.plist

PostgreSQLの操作編

データーベースを表示する

f:id:hira98:20190524211531p:plain ※文字だと表が崩れてしまうため画像にしてます。

PostgreSQLのユーザーアカウントを作成する

#ユーザー名「postgres」でアカウント作成
$ createuser postgres --interactive
Shall the new role be a superuser? (y/n) y     [※1]

[2019年5月28日追記]

[※1] スーパーユーザーにするか聞かれのでyを選択する。 スーパーユーザーにする理由は、postgresアカウントでPostgreSQLへログインしてもDB操作できないため。  

PostgreSQLにログインする

#「postgres」でPostgreSQLにログインする
$ psql -U postgres
postgres-> 

 postgres->の状態になるとPostgreSQLにログイン成功です。

この状態でSQL文を入力することで、DB作成や表作成などを行えます。

PostgreSQLとのお別れ編

停止する方法

$ brew services stop postgresql
Stopping `postgresql`... (might take a while)
==> Successfully stopped `postgresql` (label: homebrew.mxcl.postgresql)

$ brew services list
Name       Status  User  Plist
postgresql stopped       

PostgreSQLをアンインストールする方法

#PostgreSQLのアンインストール
$ brew uninstall postgresql

#PostgreSQLの作業フォルダの削除
$ rm -rf /usr/local/var/postgres

参考情報

OS X に PostgreSQL を Homebrew でインストールして brew services で起動する

Spring徹底入門 Spring FrameworkによるJavaアプリケーション開発

https://ryoutaku-jo.hatenablog.com/

→ブログ投稿のモチベーションを維持するための情報源です。

最後に

これで、MacにPosgreSQL環境を構築する手順は完璧にマスターしたぜよ💪

…転職先のPCはWindowsだけどね😭