w3resource

PostgreSQL Default Port Configuration Guide


PostgreSQL: Understanding the Default Port

PostgreSQL, like other database systems, operates over a specified network port to allow client applications to connect to it. By default, PostgreSQL uses port 5432. This port is essential for communication between the database server and client applications, and understanding it is important when setting up PostgreSQL, troubleshooting connectivity issues, or working in environments with multiple databases.

Default Port Details:

  • Default Port: 5432
  • Configuration File: The port can be found and modified in PostgreSQL's main configuration file, usually located at postgresql.conf.

The default port, 5432, is a well-established convention, making it easy for administrators and applications to know where to look to connect to a PostgreSQL instance. In cases where multiple PostgreSQL servers are hosted on the same machine, unique ports must be specified for each instance to avoid conflicts.

Changing the Default Port:

To modify the default port:

1. Locate the Configuration File:

Open the postgresql.conf file. This file is typically found in the PostgreSQL data directory. You can also use the SHOW config_file; command in PostgreSQL to find the location.

2. Modify the Port Setting:

In the postgresql.conf file, look for the line that begins with port.

 port = 5432

Change 5432 to your desired port number.

3. Restart PostgreSQL:

  • After saving changes to postgresql.conf, restart the PostgreSQL service to apply the new port setting.

Example Code for Viewing and Setting Port in PostgreSQL

Checking the Current Port in PostgreSQL:

You can check which port PostgreSQL is running on using a SQL query:

-- Check the current port PostgreSQL is using
SHOW port;

Example: Changing the Default Port

To change the port in postgresql.conf:

# Open the postgresql.conf file in a text editor
# Locate the port setting

port = 5433  # Change from 5432 to another port, e.g., 5433

Explanation:

  • In this example, we change the default port from 5432 to 5433. This is especially useful when running multiple PostgreSQL instances on the same machine.

Connecting to PostgreSQL on a Custom Port

Once the port has been changed, client applications and commands should specify the new port when connecting. For example:

Code:


# Connecting to PostgreSQL on a non-default port (e.g., 5433) using psql
psql -h localhost -p 5433 -U postgres -d your_database

Here:

  • -p 5433 specifies the custom port to connect to.

Additional Tips

  • Firewall Considerations: Make sure the chosen port is open on any firewalls, especially if accessing PostgreSQL from an external network.
  • Multiple Instances: Running multiple PostgreSQL instances on a single server requires each to have a unique port, which you can configure in each instance's postgresql.conf.
  • Default Port for Applications: Applications that connect to PostgreSQL typically assume port 5432 unless specified otherwise, so be sure to update configurations in application settings if the port is changed.

Summary:

The PostgreSQL default port, 5432, is the standard communication endpoint for PostgreSQL servers. You can change this in postgresql.conf if needed, but remember to restart PostgreSQL and configure client connections to the new port.

All PostgreSQL Questions, Answers, and Code Snippets Collection.



Become a Patron!

Follow us on Facebook and Twitter for latest update.

It will be nice if you may share this link in any developer community or anywhere else, from where other developers may find this content. Thanks.

https://w3resource.com/PostgreSQL/snippets/postgresql-default-port.php