Edu IT

Backup – Restore database PDDIKTI Feeder localhost

pddiktifeeder

– Tutorial berikut hanya ditujukan untuk advance user baik programmer atau database engineer yang bertanggung jawab terhadap pelaporan PDDIKTI Feeder perguruan tinggi
– Tutorial ini bisa digunakan untuk backup-restore database di komputer yang sama/berbeda, melakukan instalasi PDDIKTI Feeder di PC/Laptop/Server yang lain tanpa harus melakukan prefill data, ataupun hanya untuk backup PDDIKTI Feeder secara reguler di localhost
– Jika anda tidak tahu resiko yang akan anda hadapi, tutorial berikut hanya untuk dibaca !!!!
– Untuk menghindari pesan ‘PENYALAHGUNAAN APLIKASI’ silahkan dicoba pada PDDIKTI Feeder development dan jangan dilakukan pada PDDIKTI Feeder production (aplikasi riil)

Bagi yang ingin melakukan instalasi PDDIKTI Feeder di komputer lain, atau bahkan anda mendapatkan pesan ‘TERJADI PENYALAHGUNAAN APLIKASI…. dst’. Kita bisa melakukan backup restore database pddikti tanpa harus melakukan prefill data atau melakukan validasi ulang.

Terdapat 2 kendala utama:

1. Kita harus punya akses ke PostgreSQL PDDIKTI Feeder

2. Default encoding database pddikti dengan format UTF8 tidak sesuai dengan default encoding instalasi postgresql PDDIKTI Feeder (WIN1252).

Solusi:

1. Untuk yang ingin memperoleh koneksi ke PostgreSQL PDDIKTI Feeder, silahkan baca tutorial disini.

2. Berikut adalah cara merubah default encoding PostgreSQL PDDIKTI Feeder agar full compatible dengan UTF8:

UPDATE pg_database SET datistemplate = FALSE WHERE datname = 'template1';
DROP DATABASE template1;
CREATE DATABASE template1 WITH TEMPLATE = template0 ENCODING = 'UNICODE';
UPDATE pg_database SET datistemplate = TRUE WHERE datname = 'template1';
\c template1;
VACUUM FREEZE;
\q;

Dengan menjalankan sintaks diatas, kita sudah berhasil merubah default encoding PostgreSQL PDDIKTI Feeder ke UTF8 (kenapa harus UTF8, karena default encoding database pddikti adalah UTF8).

pddiktiproperties

Jika ingin memiliki 3 komputer untuk ujicoba PDDIKTI Feeder, maka eksekusi syntax dilakukan di masing-masing PC/laptop/server.

Lakukan backup database di PDDIKTI Feeder (pada komputer master) dari folder:
C:\Program Files (x86)\PDDIKTI\pgsql\bin

pg_dump --port=54322 --username=namauserdatabase --format=c --file=d:\namafilebackup pddikti

note: 
sesuaikan port dan username,
dengan asumsi file backup database disimpan di drive D:

Kemudian pada komputer target:

– Install program PDDIKTI Feeder beserta patch.

– Lakukan penambahan user baru database PostgreSQL PDDIKTI Feeder (tutorial disini)

– Matikan service webserver PDDIKTI Feeder dengan perintah:

net stop PDDIKTIWebSrv

– Buat dulu database pddikti dengan format UTF8 melalui syntax berikut:

createdb --encoding=utf8 --owner=s3kar4ng --port=54322 --username=namauserdatabase pddikti

note: sesuaikan port sesuai aplikasi feeder dan username dng level supersuser
update patch E: untuk owner silahkan diganti dengan j4lakb4li
update Feeder 2: untuk owner silahkan diganti dengan b1sm1ll4h

– Lakukan restore database dengan menggunakan syntax:

pg_restore --port=54322 --username=namauserdatabase --dbname=pddikti --format=c d:\namafilebackup

dengan asumsi file backup database disimpan di drive D:

abaikan pesan error yang terjadi (biasanya pesan error hanya terjadi karena perbedaan username atau role).

Setelah sukses melakukan restore database, jalankan perintah: net start PDDIKTIWebSrv dan gunakan shortcut PDDIKTI di desktop untuk menjalankan aplikasi PDDIKTI Feeder.

Jika tidak ada pesan penyalahgunaan aplikasi, berarti langkah kita melakukan restore database PDDIKTI Feeder ke komputer yang berbeda telah berhasil. Untuk melakukan backup secara reguler cukup eksekusi perintah pg_dump seperti pada contoh diatas.

Skip to toolbar