現在OSS-DB Silver Ver.2を勉強中のサイト主です。
OSS DB Silverを本で勉強していても図にしないとわからなかったり、表にしたほうが分かりやすいこともあります。そのため、自分が覚えにくいと思ったこと、混同しやすいことをまとめています。書いてあることは常識なことかもしれませんが私がわからなかったことをまとめています。
勉強法などは下記に記載しています。
OSS DB exam Silverの勉強内容
- オープンソースデータベースの一般的特徴
- データベースの基礎知識
- インストール
- 標準付属ツール⇦今日はこれ!
- 設定ファイル
- バックアップとリストア
- 基本的な運用管理
- SQLとオブジェクト
- 組み込み関数と演算子
- トランザクション
標準付属ツール
【Part3】OSS DB Exam Silver 技術解説セミナー ~ PostgreSQL 基本操作 (起動/停止、ユーザ作成、データベース作成、psql)~
psql
プロンプト
「=#」…接続しているユーザはスーパーユーザー
「=>」…接続しているユーザは一般ユーザ
2行目以降は
「-#」「→」
SQLの発行
- 「;」でSQLの終わり、コメントは「–」
- SQL構文中の空白、タブ、改行はいくらしても空白の一つとして扱われる
- SQL構文の大文字・小文字は区別されない、日本語も可
- Linuxでは「Ctrl-c」で入力キャンセル
- psqlの終了方法…「¥q」または「ctrl-d」(Linux)
共通オプション
・pg_ctl
PostgreSQLの起動・停止・状態確認などに使う管理ツール
・pg_ctl initdb
initdbを呼び出して指定のディレクトリにデータベースクラスタを作成する
・pg_ctl start
バックグラウンドでPostrreSQLを起動する
・pg_ctl stop
smart mode | 全クライアントの接続終了を待つ |
fast mode | 直ちに終了 |
immediate mote | 適切な終了処理をせず直ちに終了 |
・pg_ctl restart
稼働中のSQLを停止し、再び稼働する
・pg_ctl reload
設定ファイルを読みこみさせます
・pg_ctl status
マスタプロセスのプロセスIDが表示される
・pg_ctl kill
プロセスにシグナルを送信する
シグナル | 効果 |
TERM | スマートシャットダウンで停止する |
INT | 高速シャットダウンで停止する |
QUIT | 即時シャットダウンで停止する |
HUP | 設定ファイルを再読み込みさせる |
・createuser
データベースユーザを作成する
オプション | 説明 |
-P | パスワードを設定する |
-s | スーパーユーザー権限を設定する |
-S | スーパーユーザー権限を設定しない(デフォ) |
-d | データベースの作成権限を設定する |
-D | データベースの作成権限を設定しない(デフォ) |
-r | ユーザの作成権限を設定する |
-R | ユーザの作成権限を設定しない(デフォ) |
-l | ログイン権限を設定する |
-L | ログイン権限を設定しない(デフォ) |
–interactive | 対話的に設定する場合に指定 |
-e,–echo | createuserが実行したSQLを出力 |
・dropuser
データベースユーザを削除する
・createdb
データベースを作成する
オプション | 説明 |
-E | データベースのエンコーディングを指定する |
-l | データベースのロケールを指定する |
-O | データベースの所有者となるユーザを指定する |
-T | テンプレートデータベースを指定する |
・dropdb
データベースを削除する
・psql
接続と切断
オプション | 説明 |
-L | データベース一覧を表示し、psqlを終了する。メタコマンド\lと同じ効果 |
-c | 指定したコマンドを実行する、psqlを終了する |
-f | 指定したファイルからコマンドを読み込み実行する、psqlを終了する |
-d | 接続するデータベースの名前を指定する。-dを省略した場合は最初の引数がdbnameとして扱われる |
・メタコマンド
メタコマンド | 説明 |
\q | PostgreSQL 終了 |
\l | 作成されているデータベースの一覧を取得する |
\d | トリガーを含むテーブル定義を表示 |
\du | ユーザリスト表示・ロール一覧を表示 |
\dn | スキーマ一覧を表示 |
\dt | データ型一覧を表示 |
\dv | ビュー一覧を表示 |
\ds | テーブル一覧を表示 |
\dp | テーブル、ビュー、シーケンスのアクセス権一覧を表示 |
\z | テーブル、ビュー、シーケンスのアクセス権一覧を表示 |
\c | 別のデータベースに接続することができる |
\x | 拡張表示。出力結果が長すぎて表示が崩れてしまう場合、このコマンドで縦型表示に変更して見た目を整えることができる |
\? | psql コマンドの一覧と使い方が表示される |
\h | SQL のヘルプが出てくる |
所感
共通オプションが重要な章でした。pg_ctl stopとpg_ctl killが共通していることを最初は知らず問題を間違えました。共通で別のオプションがあるものや似ているけれど別の機能のあるオプションと混同していたので考える際にお気をつけください。
最近のコメント