忘れたのでメモ。テキトーに使う用途のユーザーとDBを作成するのでテーブル名を同名にするがほんとはもちろんよくない
インストール
EDBのPostgreSQLから入れた。現在のバージョンは14.1。windowsだとデフォルトで C:\Program FIles\PostgreSQL\14
に入る。
インストーラの指示に従うが基本そのままでいい。(postgres
ユーザーの)パスワードは二回入力、ポートはデフォルトで5432
。ただ、デフォルトのロケールの設定ではC
にしておくのが雑にやるなら無難。ロケールについては以下参考
コマンドプロンプト(PowerShellでもいいけど)からpsql
コマンドが使えるようになってるか確認。デフォルトではpostgres
ユーザーがpostgres
データベースを持っている。
ログインのコマンドは以下
psql -U postgres
SQLShellを使ってもいい。上記のやり方でインストールしていれば入っている。スタートメニューにPostgreSQLができているのでそこからいける
ユーザー作成
postgres
ユーザーはスーパーユーザーなのでとりあえずこいつで作成する。例えばmizuho
というユーザーを作るとする。オプションで指定するのはパスワードとログイン権限として
postgres=# CREATE ROLE mizuho WITH LOGIN PASSWARD '0001';
これで作成完了。ちなみにユーザー(ロール)一覧は\dg
。
LOGIN
をつけないとログインできない。つけ忘れたりパスワード間違えて作成したなど、ユーザーの設定を変えたい場合は次のようにALTER ROLE
を使う。以下はログイン許可を与えている例
postgres#= ALTER ROLE mizuho LOGIN;
ただ、このままだとユーザーを作成しただけで、なんのDBにも紐ついてないらしい。同名のDBが勝手に作られるかと思ってた
DB作成してユーザーをオーナーにする
というわけでそうする。
postgres#= CREATE DATABASE mizuho WITH OWNER=mizuho;
これで準備完了。データベース一覧は\l
。
ユーザー(ロール)でログイン
psql -U mizuho
お疲れさんでした。