Saya telah membuat basis data (spasial) di rumah saya yang beberapa gigabytes dan saya ingin memindahkan seluruh basis data dari satu komputer ke komputer saya.
Tidak ada yang penggemar, saya akan membuat contoh db postgresql / postgis baru di komputer kerja saya. Pengguna db mungkin atau mungkin tidak memiliki nama yang sama di kedua komputer.
Apa itu mungkin? Apa yang harus saya perhatikan? Bagaimana saya bisa melakukannya tanpa rasa sakit?
Saya menggunakan postgresql v9.1.5 dengan ekstensi postgis. Ubuntu12.04 (kernel 3.2.0-31)
postgresql
pengguna528025
sumber
sumber
Jawaban:
Anda dapat menjalankan dump dari database:
dan kemudian impor kembali ke PostgreSQL di komputer kantor Anda. Ini akan memakan waktu cukup lama dan file yang dihasilkan, bahkan jika dikompresi, mungkin berada dalam kisaran gigabyte, tetapi harus cukup kecil untuk dimuat pada kunci USB.
Di komputer kantor Anda, buat database baru dan muat dump:
Jika Anda memiliki koneksi cepat (atau dapat meluangkan waktu), Anda bahkan dapat mentransfer database melalui Internet melalui koneksi SSH terenkripsi, atau alat-alat seperti rsync.
sumber
pg_dumpall adalah cara paling aman untuk melakukan ini. Saya akan merekomendasikan mengambil dumpall sebelum migrasi. masalah terbesarnya adalah butuh waktu beberapa saat untuk mengembalikannya jika itu besar.
Anda juga dapat menyalin direktori data, sebaiknya setelah menghentikan server Anda (Anda dapat menggunakan pg_start_backup () sebagai pengganti tetapi melihat semua dokumen tentang pemulihan waktu sebelum Anda pergi ke rute itu. Rute itu akan memungkinkan downtime mendekati nol Namun, perhatikan juga Anda hanya dapat melakukan ini jika arsitektur OS dan CPU sama di kedua sistem. Anda tidak dapat berpindah dari Windows ke Linux atau dari i686 ke x86-64 dengan cara ini. Periksa versi kernel OS juga secara berurutan untuk memastikan sistem yang kompatibel.
sumber