PostgreSQLを使ってみる〜インストール、基本操作
PosgreSQL使う機会多いのでまとめてみる
インストール〜接続
Windows
ここからインストーラをダウンロード(Windows x86-64)
インストーラは基本的にそのままだけど注意点
- Local=Japanese, Japan
- 最後のチェックボックス=入れると追加パッケージインストール画面に
接続先変更
インストール先:PostgreSQL¥12¥data¥postgresql.confで設定
listen_addresses = '*'
ローカルで動かしたいとき
listen_addresses = 'localhost'
サービスの再起動
「コントロールパネル」ー「システムとセキュリティ」―「管理ツール」―「サービス」
postgres-x64-12を再起動
接続
”c:¥program files¥postgresql¥12¥bin¥psql.exe” –U postgres
インストール先は仮
Ubuntu
sudo apt-get install postgresql
接続
普段使いのユーザではPostgreSQLを操作する権限がない
PostgreSQLをインストールした時点でUbuntuにpostgresユーザが作られる
sudo su postgres
でUbuntuのpostgresユーザにスイッチ
psql
で接続
(他の方法)普段使いのユーザで
sudo -u postgres psql
で直接接続できる
サーバの状態
確認
sudo systemctl status postgresql
起動
sudo systemctl start postgresql
停止
sudo systemctl stop postgresql
基本操作
接続コマンドの補足
-u [ユーザ名]
-d [データベース名]
ここからすべて接続後のターミナル
終了:\q
SQLコマンドのヘルプ:\h
データベース一覧:\l
テーブル一覧:\dt
ビュー一覧:\dv
[DB 名]で指定されたデータベースに接続:\c [DB 名]
ロール一覧:\du
パスワード設定(Ubuntuでは聞かれないので自分で設定する必要あり):\password
ファイルからsqlを読み込ませる:\i '(sql書いたファイル.sql)'
トランザクションの開始(sql実行待ち)
BEGIN TRANSACTION;
コミット(保存)してトランザクションの終了
COMMIT;
トランザクションを途中停止し処理を最初からすべて取り消し
ABORT;
=ROLLBACK;
コメント
1行のとき:
--hogehoge
複数行のとき:
/* hogehoge
hugahuga */
ロールとは?
→PostgreSQL内のユーザ
デフォルトではPostgreSQL内にpostgresユーザができている
ロール=ユーザに権限を付与できる
CREATE USERとCREATE ROLEはだいたい同じ(暴論)