Home > PostgreSQL, Windows > Me-Restore database PostgreSQL dari Windows ke Linux

Me-Restore database PostgreSQL dari Windows ke Linux

Kasus

Anda mempunyai database PostgreSQL yang sudah berjalan di Windows kemudian ingin direstore ke server PostgreSQL yang berjalan di Linux.

Backup Database Di Windows

  1. Jalankan PgAdmin III di Windows,
  2. Pilih database yang mau dipindahkan ke Linux
  3. Klik kanan pada database, klik Backup

    Dialog Backup PgAdmin III

  4. Isikan filename yaitu nama file backup database, nama file tersebut harus ber-extension .backup
  5. Pilih option Compress
  6. Biarkan pilihan lain
  7. Klik OK
  8. Tunggu sampai proses selesai

Harap diperhatikan Encoding yang digunakan pada database di Windows apakah SQL_ASCII atau UTF8 atau yang lainnya, karena ini sangat berpengaruh pada saat restore nanti di Linux (encoding yang digunakan harus sama). Encoding database dapat dilihat dari properties database seperti gambar di bawah:

Kemudian lihat pada bagian kanan, Property – Encoding, dalam hal ini adalah SQL_ASCII. Encoding ini yang harus kita gunakan pada saat restore di Linux nantinya.

Selanjutnya, program yang dijalankan oleh PgAdmin III di WIndows untuk mem-backup database adalah pg_dump.exe dengan parameter sbb:

pg_dump.exe -i -h localhost -p 5432 -U postgres -F t -b -v –f 

       "c:\tmp\tes.backup" <namadb>

Dimana:

-i : ignore version (tidak memperhatikan versi pg_dump)

-h : hostname database server

-p: port database server

-U: user yang digunakan untuk konek ke database

-F: format file backup: c (custom) , selain itu ada pilihan t (tar)

-b: ??

-v: verbose message

Transfer file backup ke Linux

  1. Gunakan program WinSCP untuk mentransfer file ke Linux (asumsi Linux sudah di-install server SCP/ SSH)
  2. Tunggu sampai proses transfer selesai
  3. Pastikan bahwa file tersebut sudah berada pada HOME directory anda di Linux

Restore Database di Linux

Gunakan program SSH puTTY untuk masuk ke console Linux (asumsi Linux sudah diinstall server SSH).

Buat database baru tempat menampung hasil restore menggunakan program psql sebagai berikut (ketikkan perintah yang ditulis dalam huruf bold):

psql -U postgres 
Welcome to psql 8.1.3, the PostgreSQL interactive terminal.
Type:  \copyright for distribution terms
       \h for help with SQL commands
       \? for help with psql commands
       \g or terminate with semicolon to execute query
       \q to quit

postgres=# CREATE DATABASE test_restore ENCODING='SQL_ASCII';
CREATE DATABASE
postgres=# \q

Pada HOME directory jalankan program pg_restore sbb:

pg_restore -U postgres -d test_restore -F c <nama_file_backup>

Dimana:

-d: nama database tujuan restore

-U : user yang digunakan untuk konek ke database

-F : format yang digunakan untuk me-restore file backup, harus sesuai dengan format yang digunakan untuk mem-backup

Tunggu sampai proses restore selesai.

22 April 2008

  • Share/Bookmark
  1. No comments yet.
  1. No trackbacks yet.
This site uses a Hackadelic PlugIn, Hackadelic SEO Table Of Contents 1.6.0.