電波ビーチ

☆(ゝω・)v

windows10でPostgresSQLの初期設定 ~ユーザーとDBの作成~

忘れたのでメモ。テキトーに使う用途のユーザーとDBを作成するのでテーブル名を同名にするがほんとはもちろんよくない

インストール

EDBのPostgreSQLから入れた。現在のバージョンは14.1。windowsだとデフォルトで C:\Program FIles\PostgreSQL\14 に入る。 インストーラの指示に従うが基本そのままでいい。(postgresユーザーの)パスワードは二回入力、ポートはデフォルトで5432。ただ、デフォルトのロケールの設定ではCにしておくのが雑にやるなら無難。ロケールについては以下参考

dev.classmethod.jp

コマンドプロンプトPowerShellでもいいけど)からpsqlコマンドが使えるようになってるか確認。デフォルトではpostgresユーザーがpostgresデータベースを持っている。 ログインのコマンドは以下

psql -U postgres

SQLShellを使ってもいい。上記のやり方でインストールしていれば入っている。スタートメニューにPostgreSQLができているのでそこからいける f:id:or3:20220106141253p:plain

ユーザー作成

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

お疲れさんでした。