PostgreSQL サーバーに接続できない? ホスト名とポート番号を確認しよう

2024-04-02

PostgreSQLのホスト名とポート番号をPSQLコマンドで取得する方法

このチュートリアルでは、PSQLコマンドを使用してPostgreSQLサーバーのホスト名とポート番号を取得する方法を説明します。

必要なもの

  • PostgreSQLサーバーへのアクセス権
  • PSQLコマンドラインツール

手順

  1. ターミナルを開きます。
  2. 以下のコマンドを実行します。
psql -h localhost -p 5432 -U postgres -W

コマンドオプションの説明

  • -h: ホスト名
  • -p: ポート番号
  • -U: ユーザー名
  • -W: パスワード入力を省略

コマンド実行例

$ psql -h localhost -p 5432 -U postgres -W
Password for user postgres:
psql (14.2)
Type "help" for help.

postgres=# \conninfo
You are connected to database "postgres" as user "postgres" on host "localhost" at port "5432".

コマンドを実行すると、以下の情報が表示されます。

  • 接続しているデータベース名

以下の方法でも、PostgreSQLサーバーのホスト名とポート番号を取得できます。

  • PostgreSQLの設定ファイルを確認する
  • 環境変数を確認する
  • PostgreSQLサーバーの管理ツールを使用する

これらの情報は、PostgreSQLクライアントツールやアプリケーションからPostgreSQLサーバーに接続するために必要です。




PostgreSQL ホスト名とポート番号取得サンプルコード

import psycopg2

# PostgreSQL サーバー情報
host = "localhost"
port = 5432
database = "postgres"
user = "postgres"
password = "password"

# 接続文字列を作成
connection_string = f"host={host} port={port} dbname={database} user={user} password={password}"

# PostgreSQL サーバーに接続
with psycopg2.connect(connection_string) as connection:
    # カーソルを取得
    cursor = connection.cursor()

    # ホスト名とポート番号を取得
    cursor.execute("SELECT current_setting('host'), current_setting('port')")
    host, port = cursor.fetchone()

    # 結果を出力
    print(f"ホスト名: {host}")
    print(f"ポート番号: {port}")

実行方法

  1. 上記のコードをファイルに保存します。
  2. Python 3 でファイルを 실행합니다.

実行例

$ python3 get_host_port.py
ホスト名: localhost
ポート番号: 5432



PostgreSQL ホスト名とポート番号取得のその他の方法

PostgreSQL 設定ファイルには、サーバーのホスト名とポート番号を含む接続情報が記載されています。

設定ファイルの場所

  • Linux: /etc/postgresql.conf
  • Mac: /etc/postgres/postgresql.conf
  • Windows: C:\Program Files\PostgreSQL\14\data\postgresql.conf

設定ファイルを確認する手順

  1. 設定ファイルを開きます。
  2. hostport というキーワードを探します。
  3. キーワードの後に記載されている値が、ホスト名とポート番号です。
# ホスト名
host = localhost

# ポート番号
port = 5432

環境変数を確認する

PostgreSQL ホスト名とポート番号は、環境変数で設定することもできます。

  1. コマンドプロンプトまたはターミナルを開きます。
# Linux/Mac
export | grep PG

# Windows
set | findstr /i "PG"

環境変数の例

# Linux/Mac
PGHOST=localhost
PGPORT=5432

# Windows
PGHOST=localhost
PGPORT=5432

PostgreSQL サーバー管理ツールを使用する

pgAdmin や SQL Workbench/J などの PostgreSQL サーバー管理ツールを使用すると、GUI 操作でホスト名とポート番号を確認することができます。

ツールを使用した確認手順

  1. サーバーに接続します。
  2. サーバー情報の画面で、ホスト名とポート番号を確認します。

ツール画面例

PSQLコマンド以外にも、PostgreSQL 設定ファイル、環境変数、PostgreSQL サーバー管理ツールを使用してホスト名とポート番号を取得することができます。

それぞれの方法にはメリットとデメリットがあり、状況によって最適な方法は異なります。


postgresql psql


PostgreSQLでデータをコピーし、新しいテーブルにプライマリキーIDを自動生成する方法

前提条件PostgreSQLがインストールおよび設定されていること必要な権限を持つユーザーとしてログインしていることコピー元のテーブルとコピー先のテーブルを作成済みであること手順コピー元のテーブルを指定上記のコマンドは、original_table テーブルのすべての行をCSV形式で標準出力にコピーします。HEADERオプションは、CSVファイルの最初の行にカラム名を含めます。...


PostgreSQL: 安全かつ簡単にユーザーをスーパーユーザーにアップグレードする方法

PostgreSQLでは、スーパーユーザーと呼ばれる特別なユーザーアカウントが存在します。スーパーユーザーは、データベースのすべてのオブジェクトを作成、変更、削除する権限を持ち、他のユーザーに権限を付与することもできます。このチュートリアルでは、既存のユーザーをスーパーユーザーにアップグレードする方法を2つの方法で説明します。...


初心者でも安心!PostgreSQLでらくらく大文字小文字を区別しない検索

ILIKE 演算子は、LIKE 演算子に似ていますが、大文字小文字を区別しません。 つまり、ILIKE 'pattern' は、LIKE 'pattern' と同じように動作しますが、大文字と小文字が一致しても照合されます。上記のクエリは、name 列に "田中" または "たなか" または "タナカ" などと一致する名前を持つすべてのユーザーを返します。...


PostgreSQLで「time」フィールドを駆使して時間分析を極める!6つの方法とサンプルコード

EXTRACT() 関数と集計関数を使用する最も基本的な方法は、EXTRACT() 関数を使って time フィールドから抽出したい時間単位 (例:hour) を取得し、それを集計関数 (例:COUNT(), SUM(), AVG()) と組み合わせてグループ化を実行する方法です。...