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

Tingkatkan PostgreSQL dari 9.6 ke 10.0 di Ubuntu 16.10

Panduan Langkah-demi-Langkah

  1. Buat cadangan . Pastikan database Anda tidak diperbarui.

     pg_dumpall > outputfile
    
  2. Instal Postgres 10 . Ikuti instruksi di halaman ini:https://www.postgresql.org/download/linux/ubuntu/

    Kemudian jalankan sudo apt-get install postgresql-10 . Versi yang lebih baru akan dipasang berdampingan dengan versi sebelumnya.

  3. Jalankan pg_lsclusters :

     Ver Cluster Port Status Owner    Data directory               Log file
     9.6 main    5432 online postgres /var/lib/postgresql/9.6/main /var/log/postgresql/postgresql-9.6-main.log
     10  main    5433 online postgres /var/lib/postgresql/10/main  /var/log/postgresql/postgresql-10-main.log
    

    Sudah ada cluster main untuk 10 (karena ini dibuat secara default pada instalasi paket). Hal ini dilakukan agar penginstalan baru dapat berjalan di luar kotak tanpa perlu membuat cluster terlebih dahulu, tetapi tentu saja bentrok saat Anda mencoba memutakhirkan 9.6/main ketika 10/main juga ada. Prosedur yang disarankan adalah menghapus 10 cluster dengan pg_dropcluster dan kemudian tingkatkan dengan pg_upgradecluster .

  4. Hentikan 10 cluster dan jatuhkan:

     sudo pg_dropcluster 10 main --stop
    
  5. Hentikan semua proses dan layanan menulis ke database. Hentikan basis data:

     sudo systemctl stop postgresql 
    
  6. Tingkatkan kluster 9.6:

     sudo pg_upgradecluster -m upgrade 9.6 main
    
  7. Mulai PostgreSQL lagi

     sudo systemctl start postgresql
    
  8. Jalankan pg_lsclusters . Cluster 9.6 Anda sekarang harus "down", dan cluster 10 harus online di 5432 :

     Ver Cluster Port Status Owner    Data directory               Log file
     9.6 main    5433 down   postgres /var/lib/postgresql/9.6/main /var/log/postgresql/postgresql-9.6-main.log
     10  main    5432 online postgres /var/lib/postgresql/10/main  /var/log/postgresql/postgresql-10-main.log
    
  9. Pertama, periksa apakah semuanya berfungsi dengan baik. Setelah itu, hapus cluster 9.6:

      sudo pg_dropcluster 9.6 main --stop
    

Beberapa catatan tentang pg_upgradecluster

Panduan ini berfungsi dengan baik untuk memutakhirkan dari 9.5 ke 10.1. Saat memutakhirkan dari versi yang lebih lama, pertimbangkan untuk menghilangkan -m upgrade pada langkah #6:

sudo pg_upgradecluster 9.6 main

Jika Anda memiliki cluster yang sangat besar, Anda dapat menggunakan pg_upgradecluster dengan --link opsi, sehingga pemutakhiran akan dilakukan. Namun, ini berbahaya — Anda dapat kehilangan cluster jika terjadi kegagalan. Hanya saja, jangan gunakan opsi ini jika tidak perlu, karena -m upgrade sudah cukup cepat.

Berdasarkan:

  • Dokumen:Meningkatkan Cluster PostgreSQL
  • Inti #1:delameko/upgrade-postgres-9.5-to-9.6.md
  • Inti #2:johanndt/upgrade-postgres-9.3-to-9.5.md
  • Apa yang terjadi jika saya menyela atau membatalkan pg_upgradecluster ?
  • Halaman manual Ubuntu untuk pg_upgradecluster

Perbarui

Panduan ini berfungsi dengan baik untuk memutakhirkan dari 9,6 ke 11 dan dari 10 ke 11, serta dari 10 ke 13.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tips Dan Trik Postgres

  2. Akankah UUID sebagai kunci utama di PostgreSQL memberikan kinerja indeks yang buruk?

  3. Perbedaan Timestamp Dalam Jam untuk PostgreSQL

  4. 2 Cara Menambahkan Angka Nol di PostgreSQL

  5. Pembaruan ke bidang JSON tidak bertahan ke DB