PostgreSQL gratis, sumber terbuka, dan salah satu sistem manajemen basis data relasional paling populer, yang mendukung jutaan aplikasi. Jika Anda adalah administrator database yang menggunakan PostgreSQL di lingkungan produksi, sangat penting untuk mencadangkan database Anda sehingga Anda dapat memulihkan sistem dengan cepat jika database Anda hilang.
Dalam tutorial ini, kami akan menunjukkan cara mencadangkan dan memulihkan database PostgreSQL di Linux.
Prasyarat
- VPS Ubuntu 20.04 baru dengan PostgreSQL terinstal di Platform Cloud Atlantic.net.
- Jika Anda belum menginstal PostgreSQL, Anda dapat mengunjungi blog ini untuk mempelajari cara menginstal dan mengonfigurasi Postgres.
- Kata sandi root yang dikonfigurasi di server Anda.
1 – Buat Server Cloud Atlantic.Net
Pertama, masuk ke Server Cloud Atlantic.Net Anda. Buat server baru, pilih Ubuntu 20.04 sebagai sistem operasi dengan setidaknya 1GB RAM. Hubungkan ke Server Cloud Anda melalui SSH dan masuk menggunakan kredensial yang disorot di bagian atas halaman.
Setelah Anda masuk ke server Ubuntu 20.04 Anda, jalankan perintah berikut untuk memperbarui sistem dasar Anda dengan paket terbaru yang tersedia.
apt-get update -y
2 – Memahami Sintaks Dasar pg_dump
PostgreSQL hadir dengan utilitas bawaan yang disebut pg_dump untuk membuat dan memulihkan cadangan dengan mudah.
Sintaks dasar perintah pg_dump ditunjukkan di bawah ini:
pg_dump [OPTION]... [DBNAME]
Penjelasan singkat dari setiap opsi ditunjukkan di bawah ini:
-d, –dbname=DATABASENAME : Digunakan untuk menentukan database yang ingin Anda backup.
-h, –host=HOSTNAME : Digunakan untuk menentukan hostname server database Anda.
-U, –username=USERNAME : Digunakan untuk menentukan nama pengguna PostgreSQL.
-w, –no-password : Digunakan untuk mengabaikan perintah sandi.
-p, –port=PORT : Digunakan untuk menentukan nomor port server PostgreSQL.
-W, –password : Digunakan untuk memaksa permintaan sandi.
–role=ROLENAME : SET PERAN sebelum dump.
3 – Mencadangkan dan Memulihkan Basis Data Tunggal
Anda dapat mencadangkan dan memulihkan satu database menggunakan utilitas pg_dump. Sintaks dasar untuk membuat cadangan satu database ditunjukkan di bawah ini:
pg_dump -d [source-database] -f [database_backup.sql]
Misalnya, untuk mencadangkan satu database bernama testdb dan membuat file cadangan bernama testdb_backup.sql, jalankan perintah berikut:
su - postgres pg_dump -d testdb -f testdb_backup.sql
Anda juga dapat memulihkan satu database menggunakan perintah psql. Sintaks dasar untuk memulihkan satu database ditunjukkan di bawah ini:
psql -d [destination_database] -f [database_backup.sql]
Misalnya, untuk memulihkan satu database bernama testdb dari file cadangan bernama testdb_backup.sql, jalankan perintah berikut:
su - postgres psql -d testdb -f testdb_backup.sql
Anda akan mendapatkan output berikut:
SET SET SET SET SET set_config ------------ (1 row) SET SET SET SET
Jika Anda ingin menghentikan proses pemulihan database jika terjadi kesalahan, jalankan perintah berikut:
psql -d testdb --set ON_ERROR_STOP=on -f testdb_backup.sql
Catatan : Sebelum memulihkan basis data apa pun, disarankan untuk menghentikan semua koneksi ke basis data tersebut dan menyiapkan file cadangan.
Cadangkan dan Pulihkan Semua Basis Data
Anda dapat mencadangkan semua database di PostgreSQL menggunakan utilitas pg_dumpall. Sintaks dasar untuk membuat cadangan semua database seperti yang ditunjukkan di bawah ini:
pg_dumpall -f [alldatabase_backup.sql]
Misalnya, untuk mencadangkan semua database di PostgreSQL dan membuat file cadangan bernama alldb_backup.sql, jalankan perintah berikut:
pg_dumpall -f alldb_backup.sql
Untuk memulihkan semua database dari file cadangan bernama alldb_backup.sql, jalankan perintah berikut:
psql -f alldb_backup.sql
Cadangkan dan Pulihkan Tabel Tunggal
PostgreSQL juga memungkinkan Anda untuk membuat cadangan satu tabel dari database tertentu. Anda dapat mencapai ini menggunakan sintaks berikut:
pg_dump -d [source-database] -t [table_name]-f [dbtable_backup.sql]
Misalnya, untuk membuat cadangan tabel bernama mytab dari database bernama testdb dan menghasilkan file cadangan bernama testdb_mytab.sql, jalankan perintah berikut:
pg_dump -d testdb -t mytab -f testdb_mytab_backup.sql
Jika Anda ingin memulihkan tabel ini dari file cadangan, jalankan perintah berikut:
psql -d testdb -f testdb_mytab_backup.sql
Cadangkan dan Pulihkan Basis Data Terkompresi
Anda juga dapat mencadangkan database PostgreSQL dan mengompresnya dalam format .gz untuk mengurangi ukuran cadangan.
Untuk mengambil cadangan database bernama testdb dan menghasilkan file cadangan terkompresi bernama testdb_compressed.sql.gz, jalankan perintah berikut:
pg_dump -d testdb | gzip > testdb_compressed.sql.gz
Anda juga dapat memulihkan cadangan dari file terkompresi menggunakan perintah berikut:
gunzip -c testdb_compressed.sql.gz | psql -d testdb
Kesimpulan
Dalam panduan di atas, Anda mempelajari beberapa cara untuk mencadangkan dan memulihkan basis data PostgreSQL untuk membantu Anda melakukan operasi pencadangan basis data sehari-hari. Mulailah hari ini dengan database PostgreSQL di hosting VPS dari Atlantic.Net!