Cara Backup dan Restore untuk Database PostreSQL

Halo Sobat Wawa, kali ini saya ingin menshare pengalaman tentang cara melakukan Backup dan Restore Database yang menggunakan PostgrSQL. Pada kesempatan kali ini kita akan melakukan Backup dan Restore Database menggunakan CLI (Command Line Interface). Tujuan dari Backup dan Restore sendiri salah satunya untuk menghindari kehilangan data.

Pada kesempatan kali ini abangwawa akan melakukan backup dan restore database odoo versi 16 dengan 2 tujuan :

  1. Menghindari Kehilangan Data
  2. Untuk Proses Testing atau Development pada aplikasi (misal : odoo 16)

Di sini abangwawa akan menggunakan tools dari PostgreSQL sendiri yang bisa dijalankan lewat console (CLI), dimana ada 2 file yang dibutuhkan yaitu pg_dump dan psql. Kedua file ini otomatis tersedia ketika kita melakukan instalasi database PostreSQL baik di Linux, Windows atau Mac. Berikut adalah masing-masing fungsi 2 file tersebut :

  • pg_dump : Digunakan untuk mengenerate backup file berupa SQL statement
  • psql : Digunakan untuk me-restore file berupdate SQL statement ke Database Tujuan yang Baru atau Lama (Existing)

Yuk, kita ikuti langkah-langkah berikut untuk mempraktekan Cara Backup dan Restore untuk Database PostreSQL

Cara Mengecek Database PostgreSQL dengan psql

Pada praktek kali ini saya menggunakan PostgreSQL versi 14 di Windows 11 dan akan membackup existing database yang sudah ada di Komputer saya (database aplikasi odoo 16). untuk masuk ke Database kita akan menggunakan perintah seperti di bawah

psql -U -h localhost openpg -d wms-core

Parameter :

-U username database yang sudah dibuat

-d tujuan database yang akan digunakan

-h lokasi server (jika login ke localhost atau di komputer yang sama tidak perlu menggunakan parameter ini)

Untuk melihat semua parameter psql dan penjelasannya bisa dilihat di sini https://www.postgresql.org/docs/14/app-pgdump.html. setelah perintah di atas dijalankan maka system akan menanyakan password database dan jika sukses kita akan melihat tampilan seperti di bawah

Langkah selanjutnya adalah kita akan melihat list database dan memilih database yang akan kita backup

SELECT datname FROM pg_catalog.pg_database;

Cara Backup Database PostgreSQL dengan pg_dump

Setelah Kita mengecek database yang ada di server kita, langkah selanjutnya adalah melakukan backup datbase wms-core. Selanjutnya adalah kita akan menjalankan perintah untuk membackup database dengan file pg_dump.

pg_dump -U openpg -h localhost -p 5432 -d wms-core -F p -f c:\works\backup_file.sql

Parameter :

-U username database

-d tujuan database yang akan digunakan

-p port database yang digunakan secara default menggunakan port 5432, parameter ini bisa diabakan jika port yang digunakan adalah default (5432)

-d database yang akan di backup

-F p format file backup secara default akan menggunakan format SQL (p plain text)

-f file tujuan backup

Untuk melihat semua parameter pg_dump dan detail penjelasannya bisa dicek di link ini https://www.postgresql.org/docs/14/app-psql.html. Jika perintah tersebut sukses dijalankan maka kita akan melihat tampilan seperti di bawah

Untuk melihat isi dari file backup kita bisa ketikkan perintah

type c:\works\backup_wms-core_demo.sql

Cara Restore Database PostgreSQL dengan psql

Langkah selanjutnya adalah melakukan restore database PostgreSQL ke database yang baru dan ke database lama

Restore Database PostgreSQL ke Datbase yang Baru. Perintah ini tidak perlu dijalankan jika kita ingin merestore ke database lama (sudah ada)

psql -U openpg -h localhost -p 5432 -d wms-core -c “CREATE DATABASE wms_restore”

Parameter :

-c intruksi SQL statement untuk membuat database yang baru dengan nama wms_restore

Berikut adalah tampilan ketika perintah di atas sukses dijalankan

Setelah itu kita akan menjalankan perintah untuk merestore ke Database server menggunakan perintah yang ada di bawah. Pastikan nama database tujuan restore sudah ada, jika tidak makan perintah di bawah tidak bisa dijalankan (perhatikan parameter -d).

psql -U openpg -h localhost -p 5432 -d wms_restore -f c:\works\backup_wms-core_demo.sql

Parameter :

-d tujuan restore database yang sudah ada atau kita buat

Jika sukses kita bisa melihat tampilan kurang lebih seperti di bawah

Tampilan database yang sukses direstore di aplikasi odoo 16

Kesimpulan Backup dan Restore Database postgreSQL menggunakan pg_dump dan psql

Dari artikel ini kita bisa menarik kesimpulan bahwa penggunakan tools file pg_dump dan psql ini bersita flexible dikarenakan bisa dijalankan melalui CLI (Command Line Interface). Kedua file tools ini bisa dijalankan lewat Linux, Windows dan Mac.

Salah satu kelebihan dari CLI adalah kita bisa membuat script otomatis yang bisa diintegrasikan dengan aplikasi lain karena sifatnya berupa shell script dan bisa diintegrasikan dengan Job Scheduler yang ada di masing-masing Operating System (CronJob, Windows Scheduler dll).

Sampai di sini dulu ya untuk share pengalaman Cara Backup dan Restore untuk Database PostreSQL. Jika ada masukan atau pertanyaan dari artikel ini bisa tinggalkan komen di bawah. Salam sehat selalu dan sampai jumpa di artikel berikutnya

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *