PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Bagaimana cara memutakhirkan PostgreSQL dari versi 9.6 ke versi 10.1 tanpa kehilangan data?

Dengan asumsi Anda telah menggunakan buatan sendiri untuk menginstal dan meningkatkan Postgres, Anda dapat melakukan langkah-langkah berikut.

  1. Hentikan server Postgres saat ini:

    launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist

  2. Inisialisasi database 10.1 baru:

    initdb /usr/local/var/postgres10.1 -E utf8

  3. jalankan pg_upgrade (catatan:ubah versi bin jika Anda meningkatkan dari sesuatu selain di bawah) :

    pg_upgrade -v \
        -d /usr/local/var/postgres \
        -D /usr/local/var/postgres10.1 \
        -b /usr/local/Cellar/postgresql/9.6.5/bin/ \
        -B /usr/local/Cellar/postgresql/10.1/bin/
    

    -v untuk mengaktifkan pencatatan internal yang panjang lebar

    -d direktori konfigurasi cluster database lama

    -D direktori konfigurasi cluster database baru

    -b direktori lama PostgreSQL yang dapat dieksekusi

    -B direktori baru PostgreSQL yang dapat dieksekusi

  4. Pindahkan data baru ke tempatnya:

    cd /usr/local/var
    mv postgres postgres9.6
    mv postgres10.1 postgres
    
  5. Mulai ulang Postgres:

    launchctl load ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist

  6. Periksa /usr/local/var/postgres/server.log untuk detail dan memastikan server baru dimulai dengan benar.

  7. Terakhir, instal ulang rails pg permata

    gem uninstall pg
    gem install pg
    

Saya sarankan Anda meluangkan waktu untuk membaca dokumentasi PostgreSQL untuk memahami dengan tepat apa yang Anda lakukan dalam langkah-langkah di atas untuk meminimalkan frustrasi.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Membuat tabel sementara di SQL

  2. Perbarui Kata Sandi PostgreSQL Anda di Linux

  3. Buat kolom secara dinamis untuk tab silang di PostgreSQL

  4. Alternatif dinamis untuk pivot dengan CASE dan GROUP BY

  5. Bagaimana menerapkan prioritas dalam SQL (postgres)