個人開発のなんちゃって利用なので
DBつよつよの人からしたら運用の方法とか権限周りとかいろいろつっこみどころありそうですがいったんメモ
強い人はコメントとかtwitterで優しくマサカリを投げてください
インストール
# インストールする
sudo apt update
sudo apt install postgresql postgresql-contrib
# postgresユーザで操作する
sudo -i -u postgres
# Postgresプロンプトにアクセス
psql
Postgresプロンプトのメモ
開発環境で実行した結果もメモ
DBのリスト表示
postgres= \l # リストの取得
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
----------------+----------+----------+-------------+-------------+-----------------------
car_quiz_maker | postgres | UTF8 | ja_JP.UTF-8 | ja_JP.UTF-8 |
omaemona | postgres | UTF8 | ja_JP.UTF-8 | ja_JP.UTF-8 |
postgres | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
template0 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
DBの作成
日本語対応にするにはオプションをいくつかつけておいた方がいいっぽい
CREATE DATABASE hogehoge TEMPLATE template0 ENCODING 'UTF-8' LC_COLLATE 'ja_JP.UTF-8' LC_CTYPE 'ja_JP.UTF-8';
DBへの接続
postgres= \c omaemona
You are now connected to database "omaemona" as user "postgres".
DBのテーブル一覧の取得
omaemona= \dt
List of relations
Schema | Name | Type | Owner
--------+---------------+-------+----------
public | SequelizeMeta | table | omaemona
public | article_tags | table | omaemona
public | articles | table | omaemona
public | comments | table | omaemona
public | notifications | table | omaemona
public | tags | table | omaemona
public | tips | table | omaemona
public | users | table | omaemona
(8 rows)
SQLでやり取り
omaemona= select * from users;
id | name | icon_image_path | address | created_at | updated_at
----+------------+--------------------------------------------------------------+------------------------------------+----------------------------+----------------------------
2 | aaa | | MC9npx9jtph84eWfsEUJrjFsjXjuoa7gaW | 2021-02-23 16:08:57.8+09 | 2021-02-23 16:08:57.8+09
3 | test3 | | MBJnAG6caVfQGhqumNkBd6v4YZNQAhYx8k | 2021-04-21 21:44:21.989+09 | 2021-04-21 21:44:21.989+09
1 | らいうだよ | http://localhost:3333/articleImages/1615725101560default.png | MQDuSDAsGWgm6d5n6TyBaRfBLnC73neY11 | 2021-02-23 14:15:31.728+09 | 2021-05-20 23:00:37.866+09
(3 rows)
DBに接続しさえすればSQLが使えるからそこまでいければこっちのもん。
roleの作成とかももろもろやってるけど、SQLの範囲内なのでそっちは今回は割愛