Ubuntu20.04 で psqlの操作をして少し躓いたために、メモ書き程度に書いていこうと思います!!!
postgresqlの起動、停止コマンド
$ sudo service postgresql start
$ sudo service postgresql stop
アクセス設定ファイルの編集
- passrod パスワード認証が必要(SSL暗号化されてるならok)
- md5 パスワード認証(より強力)
- rust パスワード認証不要
- peer ユーザ認証。OS側のユーザー名とPostgreSQL側のユーザー名が一致していないとエラーが発生。
sudo vim /etc/postgresql/12/main/pg_hba.conf
ユーザーpostgresでpsqlログイン
$ psql -U postgres
-Uオプションはユーザ名、-dはデータベース名
各テーブル名を出力する
# \l+
roleを作成する
# create role hogename with login password '';
role hogehoge does not exist などが表示されたらroleを作成しましょう
roleを付与する
# alter role hogename superuser;
roleを表示する
# \du
最初の1行目を出力する
# select * from table_name order by hogehoge fetch first 1 rows only
特定のデータベースにログインする
$ psql -U postgres -d murakamishumpei
米postgresなどでポートなどが省略できるのは、ホストがlocalhostの場合のみ
パスワード変更
# \password
データベース作成
$ sudo -u postgres createdb hello_dev
バックアップの作成
$ pg_dump -U postgres dbname=hogehoge -f hogehoge.sql
コメント