PostgreSQL or simply postgres is the most advanced, SQL-compliant and open-source objective-RDBMS. Compared to other RDBMSs, PostgreSQL differs itself with its support for reliable transactions, i.e. Atomicity, Consistency, Isolation, Durability (ACID).In This Article, you will learn how to Install, Connect and Manage a postgres database.

Installing & Managing postgresql Database in Debian:

sudo apt-get install postgresql-9.5 libpq-dev

This will install Database server, its dependancy packages and  Library Files. This will also create a default user for postgresql called postgres.

Connecting to Database & initial setup:

# connecting to database

sudo su
su postgres -c "psql"

# change postgres user password

ALTER USER postgres PASSWORD 'our-new-password';
\q

# modify pg_hba.conf to connect to database with password only.

local all postgres peer
local all all peer

change peer to md5 and restart postgresql for changes to take affect.

# connecting to database 

psql -U postgres

enter password when prompted and you will be connected to databse.

Basic Commands:

# create new database
CREATE DATABASE gondor;

# create new user
CREATE USER elessar WITH PASSWORD '<some-password>'

# grant the user permission to Database
GRANT ALL PRIVILEGES ON DATABASE gondor TO elessar;

# switch to database
connect <database-name>

Using Docker Image:

Installing Docker:

wget -qO- https://get.docker.com/ | s

Deploy postgres container:

docker run --name some-postgres -e POSTGRES_PASSWORD=<password-postgres-user> -d postgres

Replace <password-postgres-user> and run the command. This will launch postgresql database.

Connecting to this Docker Instance:

apt-get install postgresql-client-common postgresql-client-9.5

This will install client tools, then you can connect using

psql -U postgres -h <docker-ip>

This will prompt for password and then you can connect and use postgres as you normally would.

 

Subscribe To our news letter

Subscribe to our news letter to receive latest blog posts into your inbox. Please fill your email address in the below form.
*We don't provide your email contact details to any third parties
Latest Comments
Related Articles
Securing Elastic search Instance with Shield Jagadeesh V

Shield allows you to protect elastic search data with a username and password. It provides additional functionalities like encryption, role-based access control, IP filtering. It ...

Continue Reading...
MySQL Setup and Security Jagadeesh V

In This Post you'll learn to install and secure your MYSQL Setup to interact with external applications.

Continue Reading...
Daemonizing any command with SUPERVISOR Ashwin Kumar

Daemonizing a command means to make it run as a background process.

so when we have a command that we want to daemonize there are ...

Continue Reading...