GanosBase mekansal-zamansal motor eklentileri arasında Alibaba Cloud tarafından geliştirilen GanosBase eklentisi ve PostGIS eklentisi bulunur. Bu konuda, bu eklentilerin nasıl yükseltileceği açıklanmaktadır.
Ganos
Ganos
GanosBase eklentileri
Yüklü GanosBase eklentilerini sorgulama
PostgreSQL komut satırı aracını kullanarak veritabanına bağlanın.
-
Yüklü GanosBase eklentilerini sorgulamak için aşağıdaki SQL ifadesini çalıştırın.
SELECT *, installed_version < default_version AS need_update FROM pg_available_extensions WHERE name LIKE 'ganos%';Örnek çıktı:
name | default_version | installed_version | comment | need_update -------------------------------+-----------------+-------------------+--------------------------------------------------------------------------------------+------------- ganos_trajectory | 5.5 | 5.4 | Ganos trajectory extension for PostgreSQL | t ganos_pointcloud_geometry | 5.5 | 5.4 | Ganos_pointcloud LIDAR data and ganos_geometry data for PostgreSQL | t ganos_raster | 5.5 | 5.4 | Ganos raster extension for PostgreSQL | t ganos_networking | 5.5 | 5.4 | Ganos networking extension for PostgreSQL | t ganos_geometry_pyramid | 5.5 | 5.4 | Ganos Geometry Pyramid extension for PostgreSQL | t ganos_scene | 5.5 | 5.4 | Ganos scene extension for PostgreSQL | t ganos_geometry_topology | 5.5 | 5.4 | Ganos geometry topology spatial types and functions extension for PostgreSQL | t ganos_tiger_geocoder | 5.5 | 5.4 | Ganos tiger geocoder and reverse geocoder | t ganos_importer | 5.5 | 5.4 | Ganos Spatial importer extension for PostgreSQL | t ganos_vomesh | 5.5 | 5.4 | Ganos volumn mesh extension for PostgreSQL | t ...
Parametre
Açıklama
name
Eklentinin adı.
default_version
Mevcut veritabanında yüklenebilen en son sürüm.
installed_version
Şu anda yüklü olan sürüm.
comment
Eklenti açıklaması.
need_update
Yükseltme gerekip gerekmediğini gösterir.NotSorgu sonucunda, need_update sütunundaki t değeri yükseltme gerektiğini gösterir.
GanosBase eklentilerini yükseltme
-
GanosBase eklenti sürümünüz 3,1 veya üzeriyse tüm GanosBase eklentilerini yükseltmek için aşağıdaki ifadeyi çalıştırın.
SELECT ganos_update(); -
GanosBase eklenti sürümünüz 3,1'den önceyse tüm GanosBase eklentilerini yükseltmek üzere bir işlev oluşturmanız gerekir. Aşağıdaki ifadeyi çalıştırın:
CREATE OR REPLACE FUNCTION ganos_update() RETURNS text AS $$ DECLARE rec RECORD; sql text; BEGIN FOR rec IN SELECT extname FROM pg_extension WHERE extname like 'ganos_%' LOOP sql = 'ALTER EXTENSION ' || rec.extname || ' UPDATE '; RAISE NOTICE '%', sql; EXECUTE sql; END LOOP; return 'All Ganos extensions have been updated to the latest version'; END $$ LANGUAGE 'plpgsql' volatile STRICT;
PostGIS eklentileri
1. Adım: Yüklü PostGIS eklentilerini sorgulama
PostgreSQL komut satırı aracını kullanarak veritabanına bağlanın.
-
Yüklü PostGIS eklentilerini sorgulamak için aşağıdaki SQL ifadesini çalıştırın.
SELECT *, installed_version < default_version AS need_update FROM pg_available_extensions WHERE name LIKE 'postgis%';Örnek çıktı:
name | default_version | installed_version | comment | need_update ------------------------+-----------------+-------------------+------------------------------------+------------- postgis | 3.3.2 | 3.1.4 | Ganos PostGIS+ | t postgis_tiger_geocoder | 3.3.2 | 3.1.4 | Ganos PostGIS+ tiger geocoder | t postgis_raster | 3.3.2 | 3.1.4 | PostGIS raster types and functions | t ...
Parametre
Açıklama
name
Eklentinin adı.
default_version
Mevcut veritabanında yüklenebilen en son sürüm.
installed_version
Şu anda yüklü olan sürüm.
comment
Eklenti açıklaması.
need_update
Yükseltme gerekip gerekmediğini gösterir.NotSorgu sonucunda, need_update sütunundaki t değeri yükseltme gerektiğini gösterir.
2. Adım: PostGIS eklentilerini yükseltme
PostGIS eklentilerinin yükseltme yöntemi, RDS PostgreSQL örneğinizin ana sürümüne bağlıdır.
Bu işlem yalnızca tek bir veritabanı için geçerlidir. Örneğinizde birden fazla veritabanı varsa bu adımları her veritabanı için tekrarlamalısınız.
-
RDS PostgreSQL 10, 13, 14 veya 15 ana sürümlerinde yükseltme işlemini şu şekilde gerçekleştirin:
PostGIS eklentisini yükseltmek için aşağıdaki SQL ifadesini çalıştırın.
ALTER EXTENSION <plug-in_name> UPDATE;NotBu ifadeyi her eklenti için ayrı ayrı çalıştırmanız gerekir.
Alternatif olarak, eklentileri yükseltmek için
PostGIS_Extensions_Upgradeişlevini çalıştırabilirsiniz. Daha fazla bilgi için bkz. PostGIS_Extensions_Upgrade.
SELECT PostGIS_Extensions_Upgrade(); -
RDS PostgreSQL 11 ve 12 ana sürümlerinde yükseltme işlemini şu şekilde gerçekleştirin:
PostGIS eklentisini yükseltmek için aşağıdaki SQL ifadesini çalıştırın.
do $$ DECLARE with_pgis boolean; with_ganos boolean; BEGIN SELECT ((SELECT 1 FROM pg_extension WHERE extname='postgis') IS NOT null) INTO with_pgis; SELECT ((SELECT 1 FROM pg_extension WHERE extname='ganos_geometry') IS NOT null) INTO with_ganos; IF with_pgis AND with_ganos THEN PERFORM ganos_update(); ELSIF with_ganos THEN PERFORM ganos_update(); ELSIF with_pgis THEN PERFORM PostGIS_Extensions_Upgrade(); END IF; return 'PostGIS has been updated to ' || postgis_lib_version(); END $$ LANGUAGE 'plpgsql' ;ÖnemliBazı RDS PostgreSQL 11 ve 12 örneklerinde PostGIS eklentisi Ganos kullanılarak uygulanır. Bu SQL ifadesini çalıştırdığınızda
ERROR: RETURN cannot have a parameter in function returning voidbenzeri bir hata alırsanız PostGIS eklentisinin başarıyla yükseltildiğini doğrulamak içinSELECT postgis_lib_version();komutunu çalıştırmanız gerekir.