PostgreSQL için Azure Veritabanı - Esnek Sunucuda ana sürüm yükseltmeleri

ŞUNLAR IÇIN GEÇERLIDIR: PostgreSQL için Azure Veritabanı - Esnek Sunucu

PostgreSQL için Azure Veritabanı esnek sunucu PostgreSQL sürüm 16, 15, 14, 13, 12 ve 11'i destekler. Postgres topluluğu, yılda bir kez yeni özellikler içeren yeni bir ana sürüm yayınlar. Ayrıca, her ana sürüm küçük sürümler biçiminde düzenli hata düzeltmeleri alır. İkincil sürüm yükseltmeleri, mevcut uygulamalarla geriye dönük uyumlu değişiklikler içerir. PostgreSQL için Azure Veritabanı esnek sunucu, müşterinin bakım penceresi sırasında ikincil sürümleri düzenli aralıklarla güncelleştirir.

Ana sürüm yükseltmeleri, ikincil sürüm yükseltmelerinden daha karmaşıktır. Bunlar, mevcut uygulamalarla geriye dönük olarak uyumlu olmayan iç değişiklikler ve yeni özellikler içerebilir.

PostgreSQL için Azure Veritabanı esnek sunucu, tek bir tıklamayla sunucunun yerinde ana sürüm yükseltmesini gerçekleştiren bir özelliğe sahiptir. Bu özellik, sunucuya erişen kullanıcıların ve uygulamaların kesintisini en aza indirerek yükseltme işlemini basitleştirir.

Yerinde yükseltmeler, ana sürümün yükseltildikten sonra geçerli sunucunun sunucu adını ve diğer ayarlarını korur. Veri geçişi veya uygulama bağlantı dizesi değişiklik gerektirmez. Yerinde yükseltmeler, veri taşımaya göre daha hızlıdır ve daha az kesinti süresi yaşatır.

İşlem

Yerinde ana sürüm yükseltmeleriyle ilgili dikkat edilmesi gereken önemli noktalardan bazıları şunlardır:

  • Yerinde ana sürüm yükseltme işlemi sırasında, PostgreSQL için Azure Veritabanı esnek sunucu yükseltmenin başarısız olmasına neden olabilecek olası sorunları belirlemek için bir ön denetim yordamı çalıştırır.

    Ön denetim herhangi bir uyumsuzluk bulursa, yükseltme ön denetiminin başarısız olduğunu gösteren bir günlük olayı ve bir hata iletisi oluşturur.

    Ön denetim başarılı olursa, PostgreSQL için Azure Veritabanı esnek sunucu hizmeti durdurur ve yükseltmeyi başlatmadan hemen önce örtük bir yedekleme alır. Hizmet, bir yükseltme hatası olduğunda veritabanı örneğini önceki sürümüne geri yüklemek için bu yedeklemeyi kullanabilir.

  • PostgreSQL için Azure Veritabanı esnek sunucu yerinde ana sürüm yükseltmeleri gerçekleştirmek için pg_upgrade aracını kullanır. Hizmet, sürümleri atlama ve doğrudan sonraki sürümlere yükseltme esnekliği sağlar.

  • Yüksek kullanılabilirlik (HA) için etkinleştirilen bir sunucunun yerinde ana sürüm yükseltmesi sırasında hizmet HA'yı devre dışı bırakır, birincil sunucuda yükseltmeyi gerçekleştirir ve yükseltme tamamlandıktan sonra HA'yı yeniden etkinleştirir.

  • Uzantıların çoğu, bazı özel durumlar dışında yerinde ana sürüm yükseltmesi sırasında otomatik olarak sonraki sürümlere yükseltilir.

  • esnek PostgreSQL için Azure Veritabanı sunucu için yerinde ana sürüm yükseltme işlemi, desteklenen en son ikincil sürümü otomatik olarak dağıtır.

  • Yerinde ana sürüm yükseltmesi, kısa bir kapalı kalma süresine neden olan çevrimdışı bir işlemdir. Kapalı kalma süresi genellikle 15 dakikadan kısadır. Süre, söz konusu sistem tablolarının sayısına bağlı olarak değişebilir.

  • Yükseltmeden önce uzun süre çalışan işlemler veya yüksek iş yükü veritabanını kapatmak için geçen süreyi artırabilir ve yükseltme süresini artırabilir.

  • Yerinde ana sürüm yükseltmesi başarılı olduktan sonra, önceki sürüme geri dönmenin otomatik bir yolu yoktur. Ancak, veritabanı örneğinin önceki sürümünü geri yüklemek için yükseltmeden bir zamana kadar belirli bir noktaya kurtarma (PITR) gerçekleştirebilirsiniz.

  • PostgreSQL için Azure Veritabanı Esnek Sunucu, yükseltme sırasında veritabanınızın anlık görüntüsünü alır. Yükseltme başlamadan önce anlık görüntü alınır. Yükseltme başarısız olursa sistem veritabanınızı anlık görüntüden otomatik olarak durumuna geri yükler.

  • PostgreSQL 16, rol tabanlı güvenlik önlemlerini tanıtır. PostgreSQL için Azure Veritabanı Esnek Sunucu'da ana sürüm yükseltmesinin ardından, sunucuda oluşturulan ilk kullanıcı (YÖNETICI seçeneği verilmiştir) artık temel bakım işlemleri için diğer roller üzerinde yönetici ayrıcalıklarına sahip olacaktır.

Yükseltme/geçiş sonrası

Ana sürüm yükseltmesi tamamlandıktan sonra, tabloyu yenilemek pg_statistic için her veritabanında komutunu çalıştırmanızı ANALYZE öneririz. Aksi takdirde performans sorunlarıyla karşılaşabilirsiniz.

postgres=> analyze;
ANALYZE

Ana sürüm yükseltme günlükleri

Ana sürüm yükseltme günlükleri (PG_Upgrade_Logs), ayrıntılı sunucu günlüklerine doğrudan erişim sağlar. PG_Upgrade_Logs Yükseltme sürecinizle tümleştirmek, yeni PostgreSQL sürümlerine daha sorunsuz ve şeffaf bir geçiş sağlamaya yardımcı olabilir.

Aşağıdaki sunucu parametrelerini kullanarak ana sürüm yükseltme günlüklerinizi sunucu günlükleriyle aynı şekilde yapılandırabilirsiniz:

  • Özelliği açmak için olarak ONayarlayınlogfiles.download_enable.
  • Günlük dosyalarının gün içinde elde tutulmasını tanımlamak için kullanın logfiles.retention_days.

Yükseltme günlüklerinin kurulumu

kullanmaya PG_Upgrade_Logsbaşlamak için günlükleri Azure portalı veya Azure CLI aracılığıyla yapılandırabilirsiniz. İş akışınıza en uygun yöntemi seçin.

Sunucu günlükleri için kullanıcı arabirimi aracılığıyla yükseltme günlüklerine erişebilirsiniz. Burada PostgreSQL ana sürüm yükseltmelerinizin ilerleme durumunu ve ayrıntılarını gerçek zamanlı olarak izleyebilirsiniz. Bu kullanıcı arabirimi günlükleri görüntülemek için merkezi bir konum sağlar, böylece yükseltme işlemini daha kolay izleyebilir ve sorunlarını giderebilirsiniz.

Yükseltme günlüklerini kullanmanın avantajları

  • İçgörü sağlayan tanılamalar: PG_Upgrade_Logs Yükseltme işlemiyle ilgili değerli içgörüler sağlar. Gerçekleştirilen işlemler hakkında ayrıntılı bilgileri yakalar ve oluşan hataları veya uyarıları vurgular. Bu ayrıntı düzeyi, daha sorunsuz bir geçiş için yükseltme sırasında ortaya çıkabilecek sorunları tanılama ve çözme açısından önemlidir.
  • Kolaylaştırılmış sorun giderme: Bu günlüklere doğrudan erişimle olası yükseltme engellerini hızla tanımlayıp giderebilir, kapalı kalma süresini azaltabilir ve işlemlerinizin üzerindeki etkiyi en aza indirebilirsiniz. Günlükler, daha verimli ve etkili bir sorun çözümü sağlayarak önemli bir sorun giderme aracı görevi görür.

Sınırlamalar

Yerinde ana sürüm yükseltmesi için ön denetim işlemleri başarısız olursa, yükseltme aşağıdaki tüm sınırlamalar için ayrıntılı bir hata iletisiyle başarısız olur:

  • Yerinde ana sürüm yükseltmeleri şu anda okuma amaçlı çoğaltmaları desteklememektedir. Okuma amaçlı çoğaltma işlevi gören bir sunucunuz varsa, birincil sunucuda yükseltmeyi gerçekleştirmeden önce çoğaltmayı silmeniz gerekir. Yükseltmeden sonra çoğaltmayı yeniden oluşturabilirsiniz.

  • PostgreSQL için Azure Veritabanı - Esnek Sunucu, esnek sunucunun dağıtıldığı sanal ağ içindeki 5432 ve 6432 hedef bağlantı noktalarına ve günlük arşivleme için Azure Depolama'ya trafik gönderip alabilmeyi gerektirir.

    Ağ güvenlik gruplarını (NSG) dağıtılan alt ağındaki esnek sunucunuzdan gelen veya giden trafiği kısıtlanacak şekilde yapılandırıyorsanız, alt ağ içindeki 5432 ve 6432 hedef bağlantı noktalarına giden trafiğe izin verdiğinizden emin olun. Hedef olarak Azure Depolama hizmet etiketini kullanarak Azure Depolama'ya giden trafiğe izin verin.

    Ağ kuralları düzgün ayarlanmamışsa, ana sürüm yükseltmesi sonrasında HA otomatik olarak etkinleştirilmez ve HA'yı el ile etkinleştirmeniz gerekir. NSG kurallarınızı, hedef bağlantı noktaları ve depolama için trafiğe izin verecek ve sunucuda bir HA özelliğini etkinleştirecek şekilde değiştirin.

  • Yerinde ana sürüm yükseltmeleri belirli uzantıları desteklemez ve belirli uzantıları yükseltmeye yönelik bazı sınırlamalar vardır. Tüm PostgreSQL sürümleri için aşağıdaki uzantılar desteklenmez: Timescaledb, pgaudit, dblink, orafce, , pg_partman, postgres_fdw.

  • PostGIS uzantısı yüklü sunucuları yükseltirken sunucu parametresini search_path açıkça içerecek şekilde ayarlayın:

    • PostGIS uzantısının şemaları.
    • PostGIS'e bağlı uzantılar.
    • Aşağıdaki uzantılar için bağımlılık görevi görecek uzantılar: , , , , , , , address_standardizer_data_us, fuzzystrmatch ( için postgis_tiger_geocodergereklidir). address_standardizerpostgis_topologypostgis_tiger_geocoderpostgis_sfcgalpostgis_rasterpostgis
  • Mantıksal çoğaltma yuvaları ile yapılandırılmış sunucular desteklenmez.

  • SSDv2 depolama kullanan sunucular Ana Sürüm Yükseltmelerini desteklemez.

Sonraki adımlar