ローイングファンのプログラミング日記

ボート競技やプログラミングについて書きます

PostgreSQLのデータベースをつくる

PostgreSQLの大まかな使い方は次のとおり。

  • サーバーを起動する
  • データベースをつくる
  • データベースに接続する
    • テーブルをつくる
    • テーブルにデータを挿入する
    • データを扱う
  • データベースから切断する
  • サーバーを停止して終了

今回はPostgreSQLのデータベースをつくる。
使用するPostgreSQLの前提条件は次のとおり

  • インストール方法
  • インストール時の設定
    • 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版の場合、実行すると次のようにパスワードをきかれるので、インストールするときに設定したパスワードを入力する。
(macOS10版の場合、デフォルトのままだとパスワードの設定はない)

Windows10の場合

ユーザー postgres のパスワード:


すると次のように一覧が表示される。
Windows10版

f:id:rowingfan:20180417103715p:plain

上の一覧表の見方。
「名前」がデータベース名。
「所有者」がユーザーネーム。
初期状態でpostgresユーザーのpostgresデータベースが用意されている。
初期状態は(3 行)

macOS10版

f:id:rowingfan:20180417103746p:plain

上の一覧表の見方。
「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