How To Install PostgreSQL on Debian 9

Install PostgreSQL on Debian 9

In this tutorial, we will show you how to install PostgreSQL on your Debian 9. For those of you who didn’t know, PostgreSQL is a free, open-source object-relational database management system (object-RDBMS), similar to MySQL, and is standards-compliant and extensible. It is commonly used as a back-end for web and mobile applications. PostgreSQL, or ‘Postgres’ as it is nicknamed, adopts the ANSI/ISO SQL standards together, with the revisions.

This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo‘ to the commands to get root privileges. I will show you the step-by-step installation of PostgreSQL on a Debian 9 (Stretch) server.


  • A server running one of the following operating systems: Debian 9 (Stretch).
  • It’s recommended that you use a fresh OS install to prevent any potential issues.
  • SSH access to the server (or just open Terminal if you’re on a desktop).
  • A non-root sudo user or access to the root user. We recommend acting as a non-root sudo user, however, as you can harm your system if you’re not careful when acting as the root.

Install PostgreSQL on Debian 9 Stretch

Step 1. Before we install any software, it’s important to make sure your system is up to date by running the following apt-get commands in the terminal:

apt-get update
apt-get upgrade

Step 2. Installing the PostgreSQL server.

PostgreSQL is available in the default repositories. Now, Install PostgreSQL packages using apt-get:

apt-get install postgresql-9.6

Start the PostgreSQL service also needs to be enabled to start on reboot using the following command:

systemctl start postgresql
systemctl enable postgresql

Now we can confirm the installation using some commands. They are given below:

ps -ef | grep postgre

You should see something like this on the terminal:

postgres 32162     1  0 22:58 ?        00:00:00 /usr/lib/postgresql/9.4/bin/postgres -D /var/lib/ postgresql/9.4/main -c config_file=/etc/postgresql/9.4/main/postgresql.conf
postgres 32168 32164  0 22:58 ?        00:00:00 postgres: checkpointer process
postgres 32167 32164  0 22:58 ?        00:00:00 postgres: writer process
postgres 32169 32164  0 22:58 ?        00:00:00 postgres: wal writer process
postgres 32160 32164  0 22:58 ?        00:00:00 postgres: autovacuum launcher process
postgres 32171 32164  0 22:58 ?        00:00:00 postgres: stats collector process

Step 3. Access PostgreSQL command prompt.

After installing the PostgreSQL database server, by default, it creates a user ‘postgres’ with role ‘postgres’. It also creates a system account with same name ‘postgres’. So to connect to postgres server, login to your system as user postgres and connect database:

su - postgres

Now you are logged in to the PostgreSQL database server. To check login info use the following command from the database command prompt:

postgres-# \conninfo

To disconnect from the PostgreSQL database command prompt just type the below command and press enter. It will return you back to the Ubuntu command prompt:

postgres-# \q

Create a new user and database:

### For example, let us create a new user called “idroot” with password “idrootus”, and database called “idrootdb”. ###
sudo -u postgres createuser -D -A -P idroot
sudo -u postgres createdb -O idroot idrootdb

Congratulations! You have successfully installed the PostgreSQL Server. Thanks for using this tutorial for installing PostgreSQL in Debian 9 Stretch systems. For additional help or useful information, we recommend you check the official PostgreSQL website.

VPS Manage Service Offer
If you don’t have time to do all of this stuff, or if this is not your area of expertise, we offer a service to do “VPS Manage Service Offer”, starting from $10 (Paypal payment). Please contact us to get the best deal!



r00t is a seasoned Linux system administrator with a wealth of experience in the field. Known for his contributions to, r00t has authored numerous tutorials and guides, helping users navigate the complexities of Linux systems. His expertise spans across various Linux distributions, including Ubuntu, CentOS, and Debian. r00t's work is characterized by his ability to simplify complex concepts, making Linux more accessible to users of all skill levels. His dedication to the Linux community and his commitment to sharing knowledge makes him a respected figure in the field.
Back to top button