How To Completely Remove And Reinstall PostgreSQL On Ubuntu?

Published August 24, 2024

Problem: Removing and Reinstalling PostgreSQL

Removing and reinstalling PostgreSQL on Ubuntu can be tricky. You need to uninstall the current version, clean up any leftover files and settings, and then install a new copy of the database system.

Step-by-Step Guide to Remove PostgreSQL

Stop PostgreSQL Services

Before uninstalling PostgreSQL, stop all running PostgreSQL processes. To check for active PostgreSQL processes, use this command:

ps aux | grep postgres

If any PostgreSQL processes are running, stop them with:

sudo systemctl stop postgresql

Tip: Verify PostgreSQL Service Status

After stopping the PostgreSQL service, you can verify its status using:

sudo systemctl status postgresql

This command will show you if the service is inactive or if there are any remaining processes.

Uninstall PostgreSQL Packages

To remove PostgreSQL packages, use this command:

sudo apt-get remove --purge postgresql*

This command removes all PostgreSQL packages and their config files.

Clean Up Remaining Files and Directories

After uninstalling the packages, you may need to remove some leftover directories:

sudo rm -rf /etc/postgresql/
sudo rm -rf /var/lib/postgresql/
sudo rm -rf /var/log/postgresql/

These commands delete the PostgreSQL config, data, and log directories.

Remove PostgreSQL User and Group

Remove the PostgreSQL system user and group:

sudo userdel postgres
sudo groupdel postgres

These commands delete the PostgreSQL user and group from the system.

Reinstalling PostgreSQL on Ubuntu

Preparing for a Fresh Installation

Before reinstalling PostgreSQL, update your package lists:

sudo apt update

Check that your system meets the requirements for PostgreSQL installation. Ubuntu usually includes all needed dependencies.

Tip: Check PostgreSQL Version

To check the available PostgreSQL versions in your repositories, use:

apt-cache search postgresql | grep postgresql

This command lists all available PostgreSQL packages and their versions.

Installing PostgreSQL

To install PostgreSQL, run:

sudo apt install postgresql

This installs the latest version of PostgreSQL from the Ubuntu repositories.

To install a specific PostgreSQL version, use:

sudo apt install postgresql-<version>

Replace <version> with the PostgreSQL version number you want (e.g., 12, 13, 14).

Configuring the New PostgreSQL Installation

After installation, PostgreSQL creates a default database and user. To set up more databases, use:

sudo -u postgres createdb <database_name>

To create a new user role:

sudo -u postgres createuser --interactive

This starts a prompt to set up a new user role.

To set user permissions, access the PostgreSQL prompt:

sudo -u postgres psql

Then, use SQL commands to give privileges:

GRANT ALL PRIVILEGES ON DATABASE <database_name> TO <username>;

Replace <database_name> and <username> with your database and user names.