pgAdmin のデータベース管理と phpMyAdmin との違い

1. pgAdmin の基本構造

pgAdmin は PostgreSQL 専用のデータベース管理ツールであり、MySQL 向けの phpMyAdmin とは異なる設計になっています。特に、PostgreSQL では「スキーマ」の概念があり、データベース内のテーブルやその他のオブジェクトを整理する方法が異なります。

1.1 PostgreSQL のツリー構造

pgAdmin のデータベース管理画面では、以下のようなツリー構造が表示されます。

  • Servers(サーバー): PostgreSQL インスタンスを管理
  • PostgreSQL(サーバー名): 現在接続しているデータベースサーバー
  • データベース(複数):
    • ngc_tech_chat(アプリ用データベース)
    • その他のシステムデータベース(例: postgres

1.2 データベース内の項目

項目解説(phpMyAdmin との比較)
イベントトリガMySQL の「イベントスケジューラ」に相当。特定の条件で自動実行されるトリガ。
カタログPostgreSQL のシステム情報を保持する。MySQL の INFORMATION_SCHEMA に近い。
キャストデータ型の変換ルール。MySQL には明示的な UI はない。
サブスクリプションレプリケーション関連(他のDBからデータを取得する)。MySQL でいう「レプリカ」に近い。
スキーマMySQL の「データベース」と似ているが、PostgreSQL では スキーマ内にテーブルを作る 概念がある。
パブリケーションレプリケーション関連(他のDBへデータを配信)。
外部データラッパMySQL の「FEDERATED」テーブルのように、外部DBと連携する機能。
拡張PostgreSQL の プラグイン機能。MySQL の「ストレージエンジンのプラグイン」に近い。
言語PostgreSQL では、PL/pgSQL や Python など、独自のプログラム言語をデータベース内で実行可能。

2. phpMyAdmin との違い

PostgreSQL(pgAdmin)と MySQL(phpMyAdmin)には、いくつかの大きな違いがあります。

機能pgAdmin(PostgreSQL)phpMyAdmin(MySQL)
データベース管理1つのサーバーに複数のデータベース1つのサーバーに複数のデータベース
スキーマスキーマを使ってDBを整理できるスキーマという概念がなく、DB単位で管理
イベント管理イベントトリガ を使うイベントスケジューラ を使う
レプリケーションパブリケーション & サブスクリプションマスター・スレーブのレプリケーション設定
拡張(プラグイン)拡張 を利用MySQL ではストレージエンジンの切り替え

3. PostgreSQL でよく使う操作

3.1 テーブルを作成する方法

  1. スキーマの中に public というフォルダがある(デフォルトスキーマ)
  2. public の中で右クリック → 「新しいテーブル」を作成

3.2 データを表示する方法

  1. ngc_tech_chatスキーマpublicテーブル の中にテーブルがある
  2. テーブルを選択 → 右クリック → 「データの表示/編集」

3.3 SQL クエリを実行する方法

  1. ngc_tech_chat の上で右クリック → 「クエリエディタを開く」
  2. クエリを実行
SELECT * FROM users;

4. PostgreSQL の postgres データベースについて

PostgreSQL には デフォルトで postgres データベース が作成されます。

ポイント内容
役割管理者が接続するためのデフォルトデータベース
削除可能か?削除できるが、推奨されない
削除すると?pgAdmin などでエラー、デフォルト接続先がなくなる
削除手順DROP DATABASE postgres;(別のDBに切り替えて実行)

通常は postgres データベースを削除せず、そのまま残しておくのが推奨されます。


5. まとめ

  • pgAdmin は PostgreSQL 専用の管理ツールであり、phpMyAdmin とは設計が異なる
  • スキーマの概念があり、テーブル管理が異なる
  • pgAdmin のツリー構造を理解すれば、phpMyAdmin に似た操作も可能
  • postgres データベースはデフォルトの管理用DBで、削除は推奨されない

pgAdmin に慣れることで、PostgreSQL の高度な機能を活用できるようになります! 🚀

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です