Tutorial install PostgreSQL Pada Ubuntu Server dan Desktop 20.04 dan 22.04 LTS
Jika sebelumnya kita telah mencoba installasi Database NoSQL pada Ubuntu, sekarang kita akan mencoba untuk belajar sebuah tutorial baru.
Yaitu tentang bagaimana cara install database sql (PostgreSQL) pada Ubuntu Server 20.04 LTS dan 22.04 LTS.
Selain pada Ubuntu Server, tentunya kita juga dapat menggunakan cara ini untuk menginstall PostgreSQL pada Desktop Environment (Ubuntu Desktop).
Jika kita belum terbiasa menggunakan Linux, alangkah baiknya kita melakukan pengecekan terhadap dependencies
system kita sebelum menginstall sebuah package.
# cek apakah ada pembaharuan package dari ubuntu
$ sudo apt update
# list packages yang perlu di update (jika ada)
$ apt list --upgradeable
# upgrade package (jika ada)
$ sudo apt upgrade -y
Setelah perintah-perintah di atas selesai kita jalankan, langkah selanjutnya adalah melakukan instalasi postgresql dengan mengetikkan command di bawah ini:
$ sudo apt install postgresql postgresql-contrib
Tunggu hingga selesai, karena biasanya akan membutuhkan waktu beberapa menit.
Secara default, setelah proses instalasi di atas selesai, postgresql
akan membuat user default bernama Postgre
di dalamnya yang dapat kita gunakan langsung ketika proses instalasi selesai.
# login ke postgresql dengan user yang memiliki akses superuser
$ sudo su - postgres
[sudo] password for icoldplayer:
# prompt dari postgresql
postgres@iColdPlayer:~$
Pada contoh di atas, kita telah berhasil login ke dalam prompt dari postgresql, selanjutnya kita dapat mengetikkan perintah lain agar dapat masuk ke dalam database.
# command psql akan membawa kita masuk ke dalam database
postgres@iColdPlayer:~$ psql
# menunjukkkan versi postgresql yang baru saja kita install
psql (14.0 (Ubuntu 14.0-1.pgdg20.04+1), server 13.4 (Ubuntu 13.4-4.pgdg20.04+1))
Type "help" for help.
# prompt database telah siap
postgres=#
Contoh di atas, kita telah berhasil masuk ke dalam database, proses selanjutnya kita dapat mulai meng-eksekusi command-command dari postgre itu sendiri.
Pada tutorial ini, kita akan coba membuat sebuah database yang akan kita gunakan untuk sebuah django project.
Untuk membuat sebuah databse di postgresql, perintah yang akan kita gunakan sama persis seperti milik MySQL.
# prompt default postgresql sesuai dengan user yang login pada waktu tersebut
postgres=# CREATE DATABASE data_ku;
postgres=# CREATE USER user_ku WITH PASSWORD 'password_ku';
postgres=# ALTER ROLE user_ku SET client_encoding TO 'utf8';
postgres=# ALTER ROLE user_ku SET default_transaction_isolation TO 'read committed';
postgres=# ALTER ROLE user_ku SET timezone TO 'UTC';
Proses command di atas, kita berhasil membuat user untuk database kita bernama user_ku
.
Langkah selanjutnya adalah, memberikan permission / akses kepada user_ku
agar dapat meng-akses database data_ku
.
postgres=# GRANT ALL PRIVILEGES ON DATABASE data_ku TO user_ku;
Untuk melihat list user yang baru saja kita buat, cukup mengetikkan \du
postgres=# \du
List of roles
Role name | Attributes | Member of
---------------+------------------------------------------------------------+-----------
user_ku | | {}
postgres | Superuser, Create role, Create DB, Replication, Bypass RLS | {}
selebhub_demo | | {}
Untuk melihat list database yang ada, cukup ketikkan \l
postgres=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
--------------+----------+----------+-------------+-------------+----------------------------
loker | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =Tc/postgres +
| | | | | postgres=CTc/postgres +
| | | | | loker_user=CTc/postgres
postgres | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
selebhub_dbs | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =Tc/postgres +
| | | | | postgres=CTc/postgres +
| | | | | selebhub_user=CTc/postgres
template0 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
(5 rows)
Untuk melihat isi dari database yang ada, cukup dunakan perintah \c db_name
postgres=# \c selebhub_dbs
psql (14.0 (Ubuntu 14.0-1.pgdg20.04+1), server 13.4 (Ubuntu 13.4-4.pgdg20.04+1))
You are now connected to database "selebhub_dbs" as user "postgres".
Untuk melihat isi collections
dari sebuah database, gunakan perintah \dt
di dalam prompt database.
selebhub_dbs=# \dt
List of relations
Schema | Name | Type | Owner
--------+----------------------------+-------+---------------
public | user | table | db_0
public | auth_group | table | db_0
public | auth_group_permissions | table | db_0
public | auth_permission | table | db_0
public | auth_user | table | db_0
Kita juga dapat melihat informasi yang lebih detail pada table-table tersebut dengan menggunakan perintah \dt+
selebhub_dbs=# \dt+
List of relations
Schema | Name | Type | Owner | Persistence | Access method | Size | Description
--------+----------------------------+-------+---------------+-------------+---------------+------------+-------------
public | user | table | db_0 | permanent | heap | 16 kB | notnoob.com
public | auth_group | table | db_0 | permanent | heap | 0 bytes | dev.notnoob.com
public | auth_group_permissions | table | db_0 | permanent | heap | 0 bytes | notnoob.com
public | auth_permission | table | db_0 | permanent | heap | 40 kB | dev.notnoob.com
public | auth_user | table | db_0 | permanent | heap | 32 kB | notnoob.com
Untuk keluar dari database prompt, cukup mengetikkan:
postgres=# \q
Happy coding! And keep run
the server