PostgreSQLのデータベースをつくる
PostgreSQLの大まかな使い方は次のとおり。
- サーバーを起動する
- データベースをつくる
- データベースに接続する
- テーブルをつくる
- テーブルにデータを挿入する
- データを扱う
- データベースから切断する
- サーバーを停止して終了
今回はPostgreSQLのデータベースをつくる。
使用するPostgreSQLの前提条件は次のとおり
- インストール方法
- macOS10版: Homebrew使用
- Windows10版: インストーラー使用
- インストール時の設定
- macOS10版: デフォルトのまま
- Windows10版: ロケールをCに変更、その他はデフォルトのまま
- その他
- Windows10版: インストール後にサーバーの自動起動を手動起動に変更
詳細はインストールしたときの記事を参照。
Windows10にPostgreSQLをインストールする - ローイングファンの日記
macOS10にPostgreSQLをインストールする - ローイングファンの日記
目次
データベース一覧をみる
まずデータベースの初期状態をみる。
pg_ctl start
コマンドにl
オプションをつけてPostgreSQLサーバーを起動。
サーバーの起動と停止方法は上のリンク先にあるOS別PostgreSQLインストールの記事を参照。
データベースの一覧をみるにはpsqlコマンドを使う。
Windows10の場合
psql -l -U postgres
macOS10の場合
psql -l
上のコマンドの説明。
psql
コマンドでデータベースに接続l
オプションでデータベースの一覧を表示するU
オプションでユーザー名を指定する- Windows10版のデフォルト設定だとユーザー名はpostgresになる
U
オプションを省略するとOSのユーザー名が呼び出されてしまい、postgresユーザーのデータベースと接続ができない
- macOS10版のデフォルト設定だとユーザー名はOSのユーザー名になる。そのためUオプションは省略できる。
- Windows10版のデフォルト設定だとユーザー名はpostgresになる
Windows10版の場合、実行すると次のようにパスワードをきかれるので、インストールするときに設定したパスワードを入力する。
(macOS10版の場合、デフォルトのままだとパスワードの設定はない)
Windows10の場合
ユーザー postgres のパスワード:
すると次のように一覧が表示される。
Windows10版
上の一覧表の見方。
「名前」がデータベース名。
「所有者」がユーザーネーム。
初期状態でpostgresユーザーのpostgresデータベースが用意されている。
初期状態は(3 行)
macOS10版
上の一覧表の見方。
「Name」がデータベース名。
「Owner」がユーザーネーム。
初期状態でOSユーザー名のpostgresデータベースが用意されている。
初期状態は(3 rows)
データベースをつくる
データベースをつくるにはcreatedbコマンドをつかう。
試しにtestという名前のデータベースをつくる。
Windows10版
createdb -U postgres test
macOS10版
createdb test
Windows10版の場合、パスワードを求められるので、インストールするときに設定したパスワードを入力する。
作成できているかどうか先ほど試した一覧表示で確認。
一覧表にtestデータベースが追加されていれば成功。
ユーザー名は、Windows10版ではpostgres、macOS10版ではOSユーザー名になっているはず。
作業が終了したらWindows10、macOS10ともにpg_ctl stop
でサーバーを停止。
次回はデータベースに接続してテーブルをつくります。
今回の動作確認環境
macOS 10.13.3
ターミナル 2.8.2
Windows10 1709
Windows PowerShell 5.1.16299.251
PostgreSQL 10.3