目的

上長
「新しい案件に携わっていただきたいんですが、DBがPostgreSQLなんですよね。ちょっと観といて、ローカルで環境構築しといてください(*^^*)」

自分
「はい(^o^)そういやPostgreSQL触ったことないな。。。(T_T)」

ということで、
PostgreSQLをちょっとだけ攻略


PostgreSQLの特徴

自分はサーバサイドはそこまで作業しないので、がっつかないですが、、
DBってけっこう種類ありますよね。MySQL、MariaDB、SQLite、Oracle。
そのなかで、PostgreSQLですが、MySQLと並んで人気のようです。

それで、PostgreSQLの特徴ですが、一言で表すと
性能のMySQL、機能のPostgreSQLと言われるような。。
まぁ、観点によっても評価違うでしょうが、多機能というのを特徴としてあげているトコが多いです。

使ってみる

端末上でのコマンドと、DBに接続したうえでのコマンドがあるようです。

端末上でのコマンド

以下は端末上でのコマンド

データベース一覧を表示
$ psql -l
ユーザーを作る
$ createuser --createdb --superuser --password testuser
DBを作る
$ createdb -U testuser --template=template0 --encoding=UTF8 testdb
sqlファイルを流し込む
$ psql -q -U testuser -d testdb -f ./dump.sql 
DBに接続する
$ psql -d testdb
DBを削除する
//まず既存でDBに接続しているプロセスを消すために、プロセスを確認する。
ps aux | grep 「消したいDB名

//接続しているプロセスを消す。
sudo kill 「プロセス番号」

//DB削除
$ dropdb -U postgres 「消したいDB名  
DBのダンプをとる
//testdb, dumpfileは任意に設定
pg_dump testdb > dumpfile
dumpファイルをDBにリストアする
//testdb, dumpfileは任意に設定dumpfileは「ダンプをとる」で取得したファイル
psql testdb < dumpfile

DB接続でのコマンド

例としてtestdb上とする。

テーブル一覧
testdb=# \dt
ユーザ一覧
testdb=# \du
DBから抜ける
testdb=# \q

以上。