PostgreSQL

Software screenshot:
PostgreSQL
Software ətraflı:
Version: 10.5 / 11 Beta 3 Yenil?nib
Tarixi Upload: 16 Aug 18
Lisenziya: Pulsuz
Məşhurluq: 100

Rating: 2.0/5 (Total Votes: 3)

PostgreSQL MariaDB, MySQL və ya SQLite layihələri üslubunda açıq mənbə, güclü, etibarlı, sabit, müəssisəyə hazır və pulsuz obyekt əlaqəli verilənlər bazası sistemidir. Bu, yüksək səviyyədə hazırlanmış və çoxsaylı cəlbedici xüsusiyyətlərə malik olan bir verilənlər bazası server / mühərriki olan bir ACID (Atomicity, Consistency, Isolation, Durability), yuxarıda qeyd olunan verilənlər bazası mühərrikləri üçün əla dəyişdirmədir.


Bir baxışda xüsusiyyətləri
Açar funksiyalar xarici düymələr, görünüşlər, birləşmələr, tetikleyiciler və saxlanılan prosedurlar, birdən çox dil üçün dəstək, BOOLEAN, CHAR, INTEGER, NUMERIC, VARCHAR, INTERVAL, TIMESTAMP və s. TARİH.


Bundan əlavə, proqram, multimediya fayllarının (video, audio və foto) hər cür daxil olmaqla, ikili böyük obyektlərin saxlanması üçün dəstəyi ilə gəlir və C, C ++, Python, Perl, Ruby, Java, .Net, Tcl və ODBC proqramlaşdırma dilləri.

Digər maraqlı xüsusiyyətlərdən biri də MVCC (Multi-Version Concurrency Control), masa boşlukları, multibyte xarakterli kodlaşdırma, zaman bərpa nöqtəsi, yetkin sorğu optimizatoru və planlayıcısı, asinxron replikasiya, onlayn backups, iç içə əməliyyatlar ( savepoints), isti yedeklemeler, hatalara qarşı toleranslar üçün giriş yapma, uluslararası karakter setleri üçün dəstək, həmçinin Unicode desteği.


PostgreSQL nömrələr

PostgreSQL verilənlər bazası serverinin məlumat bazaları üçün limitsiz ölçüsü, hazırda 32 TB masa üçün maksimum ölçüsü, satır başına 1.6 TB, hər sahədə 1 GB, masa üçün sınırsız satır olmalıdır, masa başına 250 və 1600 sütunları dəstəkləyir , sütun tiplərinə görə və masa başına limitsiz göstəriciləri dəstəkləyir.


Dəstəklənən əməliyyat sistemləri
PostgreSQL, GNU / Linux, BSD, Solaris, HP-UX, AIX, SGI IRIX, Solaris, Tru64, Mac OS X və Microsoft Windows daxil olmaqla bütün əsas əməliyyat sistemlərində uğurla sınaqdan keçirildi. PostgreSQL, həm də 32-bit və 64 bitli arxitekturaları dəstəkləyən bir çox Linux dağılımı üçün universal qaynaq arxivi kimi pre-derived ikili paketlər kimi yüklənə bilər.

Yeni nədir strong> bu sürümdə:

  • Bu azad iki təhlükəsizlik məsələsini düzəldir. Bu azadlıq, VACUUM, GIN və hash indeksləri, paralel sorğu, mantıksal replikasiya və son üç ayda bildirilən digər səhvlər ilə əlaqədar məsələləri də düzəldir. PostgreSQL'in etkilenen versiyasını istifadə edən bütün istifadəçilər ən qısa zamanda güncellenmelidir.

Yeni versiyası 10.4 / 11 Beta 1:

  • Bu azad iki təhlükəsizlik məsələsini düzəldir. Bu azadlıq, VACUUM, GIN və hash indeksləri, paralel sorğu, mantıksal replikasiya və son üç ayda bildirilən digər səhvlər ilə əlaqədar məsələləri də düzəldir. PostgreSQL'in etkilenen versiyasını istifadə edən bütün istifadəçilər ən qısa zamanda güncellenmelidir.

Sürümdeki yeni :

  • İstifadəçi Xəritəçəkmə Seçimləri (Noah Misch) kimi saxlanan parolları qorumaq üçün pg_user_mappings.umoptions'un görünürlüğünü daha da məhdudlaşdırın
  • CVE-2017-7486 üçün düzəldilmişdir: istifadəçinin əlaqəli xarici serverdə istifadə icazəsi olmasa da, istifadəçi öz istifadəçi xəritəsində seçimlərini görməyə imkan verdi. Bu cür seçimlər, istifadəçinin özü ilə deyil, server sahibi tərəfindən verilmiş bir parol daxil edə bilər. Information_schema.user_mapping_options bu cür hallarda variantları göstərmədiyindən, pg_user_mappings də olmamalıdır. (CVE-2017-7547)
  • Özü bu patch yalnız yeni initdb'd verilənlər bazasında davranışı düzəldəcəkdir. Bu dəyişikliyi mövcud verilənlər bazasında tətbiq etmək istəyirsinizsə, aşağıdakıları yerinə yetirməlisiniz:
  • postgresql.conf üçün allow_system_table_mods = true əlavə etdikdən sonra postmasterni yenidən başladın. (ALTER SİSTEMİ dəstəkləyən versiyalarda, konfiqurasiya dəyişikliyini etmək üçün istifadə edə bilərsiniz, lakin hələ də yenidən başlamanız lazımdır).
  • Kümelenmenin hər bazasında superuser kimi aşağıdakı əmrləri işləyin:
  • SET search_path = pg_catalog;
  • VIEW pg_user_mappings AS
  • yaradın və ya dəyişdirin
  • SELECT
  • U.oid AS umid,
  • S.oid AS srvid,
  • S.srvname AS srvname,
  • Üumuser AS umuser,
  • ÜMUMUSER = 0 THEN
  • CASE
  • 'ictimai'
  • ELSE
  • A.rolname
  • END usename,
  • CASE WHEN (U.umuser 0 və A.rolname = current_user
  • )
  • AND (pg_has_role (S.srvowner, 'USAGE')
  • Yoxsa has_server_privilege (S.oid, 'USAGE')))
  • OR (U.umuser = 0 və pg_has_role (S.srvowner, 'USAGE'))
  • OR (SEÇİN rolsuper FROM pg_authid WHERE rolname = current_user)
  • THEN U.umoptions
  • umoptions kimi ELSE NULL END.
  • FROM pg_user_mapping U
  • LEFT JOIN pg_authid A AÇIK (A.oid = Ümümuser) JOIN
  • pg_foreign_server S ON (U.umserver = S.oid);
  • Şablon1 və şablon1 verilənlər bazalarını daxil etməyi və ya daha sonra yaratdığınız verilənlər bazalarında zəiflik mövcud olacağını unutmayın. Şablonunu düzəltmək üçün müvəqqəti olaraq əlaqələri qəbul etməlisiniz. PostgreSQL 9.5 və daha sonra
  • istifadə edə bilərsiniz
  • ALLOW_CONNECTIONS ilə ALTER DATABASE şablonu0;
  • və sonra şablonu sabitlədikdən sonra
  • ilə bərpa edin
  • ALLOW_CONNECTIONS ilə ALTER DATABASE şablonu0;
  • Əvvəlki versiyalarda
  • istifadə edin
  • UPDATE pg_database SET datallowconn = true WHERE datname = 'template0';
  • UPDATE pg_database SET datallowconn = false WHERE datname = 'template0';
  • Nəhayət, allow_system_table_mods konfiqurasiya parametrini silin və yenə poçt müdirini yenidən başladın.
  • Bütün parol əsaslı autentifikasiya metodlarında (Heikki Linnakangas) boş parollara icazə verilmir
  • libpq boş parol spesifikasiyalarını məhəl qoymur və onları serverə ötürmür. Beləliklə, bir istifadəçi şifrəsi boş bir dize quraşdırılmışsa, psql və ya digər libpq-based müştərilər vasitəsilə bu parolu daxil etmək mümkün deyil. Administrator buna görə parolun boşaldılmasının parol girişini ləğv etmək üçün bərabər olduğuna inanır. Lakin, dəyişdirilmiş və ya qeyri-libpq əsaslı bir müştəri ilə daxil olma, hansı autentifikasiya metodunun konfiqurasiya olunduğuna bağlı ola bilər. Xüsusilə ən ümumi metod, md5, boş parol qəbul etdi. Bütün hallarda boş parolları rədd etmək üçün server dəyişdirin. (CVE-2017-7546)
  • hədəf böyük obyektdə (Tom Lane, Michael Paquier) UPDATE imtiyazına lo_put () yoxlayın
  • lo_put (), şübhəsiz ki, lowerrite () kimi eyni icazələri tələb etməli, lakin hər hansı bir istifadəçiyə böyük bir obyektdə məlumatları dəyişdirməyə imkan verən yox idi. (CVE-2017-7548)
  • Gözləmə serverlərinin pg_upgrade (Bruce Momjian) ilə təkmilləşdirilməsi prosesi haqqında sənədləri düzəlt
  • Əvvəlki sənədlər pg_upgrade işlətdikdən sonra, lakin gözləmə serverlərini sinxronlaşdırmadan əvvəl istifadəçilərə əsas serverin başlanmasını / dayandırmasını göstərib. Bu ardıcıllıq təhlükəlidir.
  • Tuple yeniləmə zəncirlərinin (Alvaro Herrera) eşzamanlı bağlanmasını düzəldin
  • Bir neçə seans eyni vaxtda bir köhnə anlıq görüntüdən istifadə edərək, bir cüt yeniləmə zəncirini kilidləmə rejimində kilidləməzsə və onların hamısı uğur qazanarsa, bəzilərinin bir yarışda uğursuz olmasına (və canlı tuple versiyası yoxdur) görə mümkündür vəziyyəti.
  • Datatip G / Ç funksiyasının argümanını dəyişdirərkən ya da qeyri-şəffafdan düzgün tipə (Heikki Linnakangas) dönmək növü ilə əlaqədar asılılıq məlumatını düzgün şəkildə yeniləyin
  • Bu uzun köhnəlmiş üslubda elan edilmiş TYPE yeniləmə G / Ç funksiyaları yaradın, lakin sonrakı DROP TYPE-nin arxasında pozulmuş funksiya təriflərini tərk etməyə imkan verən tipə asılılığı qeyd etməyi unutdu.
  • Bir sorğunun nəticəsindən COPY nüsxəsi olduqda (Andres Freund) sorgu planında paralellikə icazə verin
  • Analiz bir tsvector kolonunu (Heikki Linnakangas) işləyərkən yaddaşın istifadəsini azaldır
  • Tam ədədlər və ya floats (Tom Lane) tərəfindən pul dəyərlərini çarpdıqda və ya bölüşdürərkən lazımsız həssaslıq itkisi və yamacın yuvarlaqlaşdırılmasını düzəltmək
  • regprocedurein () (Tom Lane) kimi identifikatorları təhlil edən funksiyalarda boşluqlar üçün çekləri sıxın
  • Mövcud locale bağlı olaraq, bu funksiyalar boşluq kimi multibyte xarakterli parçaların yanlış tərifini verə bilər.
  • PL / Perl (Ashutosh Sharma, Tom Lane) tərtib edərkən Perl-dan müvafiq #define simvolunu istifadə edin
  • Bu, taşınabilirlik problemlərini qarşısını alır, adətən bir "handshake" kimi görünür;
  • son Perl versiyaları ilə işləyərkən kitabxana yükü zamanı uyğunsuzluq
    libpq'də, uğursuz bağlantı cəhdindən sonra GSS / SASL və SSPI identifikasiyası vəziyyətini sıfırlayın (Michael Paquier)
  • Bunu etməmək, SSL-dən SSL-dən qeyri-SSL əlaqələrinə qayıtdıqda, SSL cəhdində GSS / SASL uğursuzluğu SSL-nin qeyri-cəhdinin uğursuz olmasına səbəb olurdu. SSPI uğursuz olmadı, amma yaddaşdan sızdı.
  • Psqldə STDIN KOPYASI klaviatura EOF siqnalı ilə sona çatdıqda və sonra STDIN-dən başqa bir COPY (Thomas Munro)
  • Bu yanlış davranış, BSD-dən əldə edilən platformalarda (makOS da daxil olmaqla) müşahidə edildi, lakin əksəriyyətlə deyil.
  • PG_dump və pg_restore, REFRESH MATERIALIZED VIEW əmrlərini sonradan (Tom Lane) buraxmaq üçün
  • Materializasiya görünüşü fərqli bir istifadəçiyə məxsus olan masalara istinadən dump / bərpa zamanı səhvləri aradan qaldırır.
  • zlib (Vladimir Kunschikov, Alvaro Herrera) mənşəli səhvlər barədə pg_dump / pg_restore hesabatını təkmilləşdirin
  • Pg_dump'u təmizləyici tetikleyicileri beklendiği şekilde bırakmak üçün - temizleme seçeneği ilə (Tom Lane)
  • İndi də hadisə tetikleyicilerinin mülkiyyətini doğru bir şəkildə təyin edir; əvvəllər, bərpa scriptini işləyən superuser tərəfindən mülkiyyətə qaytarıldı.
  • Pg_dump'u, ictimai şema mövcud olmadıqda, təmizləyici seçim ilə uğursuz hala gətirməyin (Stephen Frost)
  • Boş operator sinifi (Daniel Gustafsson) üçün etibarsız SQL yaymamaq üçün pg_dump'u düzəltmək
  • pg_dump çıxışını Windows-da (Kuntal Ghosh) stdout-a düzeltin
  • Stdout'a yazılmış sıxılmış düz mətn dökümü fayl təsvirini ikili rejimə qoymamaqla əlaqədar korrupsiya məlumatını ehtiva edir.
  • Sütunların adını dəyişdirən (Tom Lane) bir görünüşün ON SELECT qayda üçün düzgün çıxdıqda pg_get_ruledef ()
  • Bəzi künc hadisələrində, pg_dump, bu səhvin dump / reload başarısızlığına səbəb ola bilməsi üçün görünüşləri atmaq üçün pg_get_ruledef () əsaslanır.
  • Xarici birləşmələrin heç bir ümumi sütun (TOM Lane) ilə DOĞAL LEFT JOIN nəticəsi kimi boş məhdudiyyətlərlə boşaltılması.
  • İfadənin bir funksiya çağırışına (Tom Lane) bənzər bir şeyə çevrilmədiyi hallarda FROM bəndində funksiya ifadələrinin boşalmasını düzəldin
  • pg_basebackup çıxışını Windows-da stdout-a düzəldin (Haribabu Kommi)
  • Stdout-a yazılmış bir backup, fayl təsvirini ikili rejimə qoymamaqdan dolayı bozuk məlumatları ehtiva edir.
  • 2gb-dən çox faylları düzgün idarə etmək üçün pg_rewind (Kuntal Ghosh, Michael Paquier)
  • Adətən bu cür fayllar PostgreSQL məlumat kataloqlarında görünməyəcək, lakin bəzi hallarda mövcud ola bilərlər.
  • Sona çatma WAL rekordunun wal_level = minimal (Bruce Momjian) olmamasını təmin etmək üçün pg_upgrade
  • Bu vəziyyət yenilənən gözləmə serverlərinin yenidən qurulmasına mane ola bilər.
  • pg_xlogdump-in WAL rekord uzunluğunun hesablanması (Andres Freund)
  • Postgres_fdw'de, ALTER SERVER ya da ALTER USER MAPPING komutlarından sonra (Kyotaro Horiguchi) uzaq serverlərə keçid əlaqələrini yenidən bərpa edin
  • Bu, əlaqə parametrlərini təsir edən variant dəyişikliklərinin dərhal tətbiq olunmasını təmin edir.
  • Postgres_fdw'de, uzaqdan əməliyyatın idarə komutlarının ləğvinə icazə verin (Robert Haas, Rafia Sabih)
  • Bu dəyişiklik bizə daha çox hallarda əvvəllərdən daha çox məsafədə uzaq məsafəli server üçün gözləmə rejimindən qaçmaq üçün imkan verir.
  • Uzantılar üçün daha çox yer təmin etmək üçün MAX_SYSCACHE_CALLBACKS artırın (Tom Lane)
  • Gcc (Tom Lane) ilə paylaşılan kitabxanalar qurarkən həmişə -fPIC-deyil, -fpic istifadə edin
  • Bu, daha fərqli olduğu platformalarda daha genişlənmə kitabxanalarını dəstəkləyir.
  • MSVC qurur, openssl kitabxanasının bir VC alt-dizisi (Andrew Dunstan) içində olmadığı vəziyyətdədir
  • MSVC qurur, libxml2 başlıq faylları üçün düzgün yolu əlavə edin (Andrew Dunstan)
  • Bu, standart Windows libxml2 quruluşlarında ətrafdakı şeyi hərəkət etmək üçün köhnə ehtiyacları düzəldir.
  • MSVC qurur, tcl86.lib (Noah Misch) adlı bir Tcl kitabxanasını tanıyır
  • MSVC qurur, vVcregress.pl komanda xəttində (Andrew Dunstan) PROVE_FLAGS parametrlərini şərəfləndirir

9.6.4 versiyasında yeni nə :

  • İstifadəçi Xəritəçəkmə Seçimləri (Noah Misch) kimi saxlanan parolları qorumaq üçün pg_user_mappings.umoptions saytının görünürlüğünü daha da məhdudlaşdırın
  • CVE-2017-7486 üçün düzəldilmişdir: istifadəçinin əlaqəli xarici serverdə istifadə icazəsi olmasa da, istifadəçi öz istifadəçi xəritəsində seçimlərini görməyə imkan verdi. Bu cür seçimlər, istifadəçinin özü ilə deyil, server sahibi tərəfindən verilmiş bir parol daxil edə bilər. Information_schema.user_mapping_options bu cür hallarda variantları göstərmədiyindən, pg_user_mappings də olmamalıdır. (CVE-2017-7547)
  • Özü bu patch yalnız yeni initdb'd verilənlər bazasında davranışı düzəldəcəkdir. Bu dəyişikliyi mövcud verilənlər bazasında tətbiq etmək istəyirsinizsə, aşağıdakıları yerinə yetirməlisiniz:
  • postgresql.conf üçün allow_system_table_mods = true əlavə etdikdən sonra postmasterni yenidən başladın. (ALTER SİSTEMİ dəstəkləyən versiyalarda, konfiqurasiya dəyişikliyini etmək üçün istifadə edə bilərsiniz, lakin hələ də yenidən başlamanız lazımdır).
  • Kümelenmenin hər bazasında superuser kimi aşağıdakı əmrləri işləyin:
  • SET search_path = pg_catalog;
  • VIEW pg_user_mappings AS
  • yaradın və ya dəyişdirin
  • SELECT
  • U.oid AS umid,
  • S.oid AS srvid,
  • S.srvname AS srvname,
  • Üumuser AS umuser,
  • ÜMUMUSER = 0 THEN
  • CASE
  • 'ictimai'
  • ELSE
  • A.rolname
  • END usename,
  • CASE WHEN (U.umuser 0 və A.rolname = current_user
  • )
  • AND (pg_has_role (S.srvowner, 'USAGE')
  • Yoxsa has_server_privilege (S.oid, 'USAGE')))
  • OR (U.umuser = 0 və pg_has_role (S.srvowner, 'USAGE'))
  • OR (SEÇİN rolsuper FROM pg_authid WHERE rolname = current_user)
  • THEN U.umoptions
  • umoptions kimi ELSE NULL END.
  • FROM pg_user_mapping U
  • LEFT JOIN pg_authid A AÇIK (A.oid = Ümümuser) JOIN
  • pg_foreign_server S ON (U.umserver = S.oid);
  • Şablon1 və şablon1 verilənlər bazalarını daxil etməyi və ya daha sonra yaratdığınız verilənlər bazalarında zəiflik mövcud olacağını unutmayın. Şablonunu düzəltmək üçün müvəqqəti olaraq əlaqələri qəbul etməlisiniz. PostgreSQL 9.5 və daha sonra
  • istifadə edə bilərsiniz
  • ALLOW_CONNECTIONS ilə ALTER DATABASE şablonu0;
  • və sonra şablonu sabitlədikdən sonra
  • ilə bərpa edin
  • ALLOW_CONNECTIONS ilə ALTER DATABASE şablonu0;
  • Əvvəlki versiyalarda
  • istifadə edin
  • UPDATE pg_database SET datallowconn = true WHERE datname = 'template0';
  • UPDATE pg_database SET datallowconn = false WHERE datname = 'template0';
  • Nəhayət, allow_system_table_mods konfiqurasiya parametrini silin və yenə poçt müdirini yenidən başladın.
  • Bütün parol əsaslı autentifikasiya metodlarında (Heikki Linnakangas) boş parollara icazə verilmir
  • libpq boş parol spesifikasiyalarını məhəl qoymur və onları serverə ötürmür. Beləliklə, bir istifadəçi şifrəsi boş bir dize quraşdırılmışsa, psql və ya digər libpq-based müştərilər vasitəsilə bu parolu daxil etmək mümkün deyil. Administrator buna görə parolun boşaldılmasının parol girişini ləğv etmək üçün bərabər olduğuna inanır. Lakin, dəyişdirilmiş və ya qeyri-libpq əsaslı bir müştəri ilə daxil olma, hansı autentifikasiya metodunun konfiqurasiya olunduğuna bağlı ola bilər. Xüsusilə ən ümumi metod, md5, boş parol qəbul etdi. Bütün hallarda boş parolları rədd etmək üçün server dəyişdirin. (CVE-2017-7546)
  • hədəf böyük obyektdə (Tom Lane, Michael Paquier) UPDATE imtiyazına lo_put () yoxlayın
  • lo_put (), şübhəsiz ki, lowerrite () kimi eyni icazələri tələb etməli, lakin hər hansı bir istifadəçiyə böyük bir obyektdə məlumatları dəyişdirməyə imkan verən yox idi. (CVE-2017-7548)
  • Gözləmə serverlərinin pg_upgrade (Bruce Momjian) ilə təkmilləşdirilməsi prosesi haqqında sənədləri düzəlt
  • Əvvəlki sənədlər pg_upgrade işlətdikdən sonra, lakin gözləmə serverlərini sinxronlaşdırmadan əvvəl istifadəçilərə əsas serverin başlanmasını / dayandırmasını göstərib. Bu ardıcıllıq təhlükəlidir.
  • Tuple yeniləmə zəncirlərinin (Alvaro Herrera) eşzamanlı bağlanmasını düzəldin
  • Bir neçə seans eyni vaxtda bir köhnə anlıq görüntüdən istifadə edərək, bir cüt yeniləmə zəncirini kilidləmə rejimində kilidləməzsə və onların hamısı uğur qazanarsa, bəzilərinin bir yarışda uğursuz olmasına (və canlı tuple versiyası yoxdur) görə mümkündür vəziyyəti.
  • Datatip G / Ç funksiyasının argümanını dəyişdirərkən ya da qeyri-şəffafdan düzgün tipə (Heikki Linnakangas) dönmək növü ilə əlaqədar asılılıq məlumatını düzgün şəkildə yeniləyin
  • Bu uzun köhnəlmiş üslubda elan edilmiş TYPE yeniləmə G / Ç funksiyaları yaradın, lakin sonrakı DROP TYPE-nin arxasında pozulmuş funksiya təriflərini tərk etməyə imkan verən tipə asılılığı qeyd etməyi unutdu.
  • Bir sorğunun nəticəsindən COPY nüsxəsi olduqda (Andres Freund) sorgu planında paralellikə icazə verin
  • Analiz bir tsvector kolonunu (Heikki Linnakangas) işləyərkən yaddaşın istifadəsini azaldır
  • Tam ədədlər və ya floats (Tom Lane) tərəfindən pul dəyərlərini çarpdıqda və ya bölüşdürərkən lazımsız həssaslıq itkisi və yamacın yuvarlaqlaşdırılmasını düzəltmək
  • regprocedurein () (Tom Lane) kimi identifikatorları təhlil edən funksiyalarda boşluqlar üçün çekləri sıxın
  • Mövcud locale bağlı olaraq, bu funksiyalar boşluq kimi multibyte xarakterli parçaların yanlış tərifini verə bilər.
  • PL / Perl (Ashutosh Sharma, Tom Lane) tərtib edərkən Perl-dan müvafiq #define simvolunu istifadə edin
  • Bu, son Perl versiyaları ilə işləyərkən, kütləvi yükləmə zamanı adətən "əlləməyin" uyğunsuzluğu kimi görünən taşınabilirlik problemlərini aradan qaldırır.

  • libpq'də, uğursuz bağlantı cəhdindən sonra GSS / SASL və SSPI identifikasiyası vəziyyətini sıfırlayın (Michael Paquier)
  • Bunu etməmək, SSL-dən SSL-dən qeyri-SSL əlaqələrinə qayıtdıqda, SSL cəhdində GSS / SASL uğursuzluğu SSL-nin qeyri-cəhdinin uğursuz olmasına səbəb olurdu. SSPI uğursuz olmadı, amma yaddaşdan sızdı.
  • Psqldə STDIN KOPYASI klaviatura EOF siqnalı ilə sona çatdıqda və sonra STDIN-dən başqa bir COPY (Thomas Munro)
  • Bu yanlış davranış, BSD-dən əldə edilən platformalarda (makOS da daxil olmaqla) müşahidə edildi, lakin əksəriyyətlə deyil.
  • PG_dump və pg_restore, REFRESH MATERIALIZED VIEW əmrlərini sonradan (Tom Lane) buraxmaq üçün
  • Materializasiya görünüşü fərqli bir istifadəçiyə məxsus olan masalara istinadən dump / bərpa zamanı səhvləri aradan qaldırır.
  • zlib (Vladimir Kunschikov, Alvaro Herrera) mənşəli səhvlər barədə pg_dump / pg_restore hesabatını təkmilləşdirin
  • Pg_dump'u təmizləyici tetikleyicileri beklendiği şekilde bırakmak üçün - temizleme seçeneği ilə (Tom Lane)
  • İndi də hadisə tetikleyicilerinin mülkiyyətini doğru bir şəkildə təyin edir; əvvəllər, bərpa scriptini işləyən superuser tərəfindən mülkiyyətə qaytarıldı.
  • Pg_dump'u, ictimai şema mövcud olmadıqda, təmizləyici seçim ilə uğursuz hala gətirməyin (Stephen Frost)
  • Boş operator sinifi (Daniel Gustafsson) üçün etibarsız SQL yaymamaq üçün pg_dump'u düzəltmək
  • pg_dump çıxışını Windows-da (Kuntal Ghosh) stdout-a düzeltin
  • Stdout'a yazılmış sıxılmış düz mətn dökümü fayl təsvirini ikili rejimə qoymamaqla əlaqədar korrupsiya məlumatını ehtiva edir.
  • Sütunların adını dəyişdirən (Tom Lane) bir görünüşün ON SELECT qayda üçün düzgün çıxdıqda pg_get_ruledef ()
  • Bəzi künc hadisələrində, pg_dump, bu səhvin dump / reload başarısızlığına səbəb ola bilməsi üçün görünüşləri atmaq üçün pg_get_ruledef () əsaslanır.
  • Xarici birləşmələrin heç bir ümumi sütun (TOM Lane) ilə DOĞAL LEFT JOIN nəticəsi kimi boş məhdudiyyətlərlə boşaltılması.
  • İfadənin bir funksiya çağırışına (Tom Lane) bənzər bir şeyə çevrilmədiyi hallarda FROM bəndində funksiya ifadələrinin boşalmasını düzəldin
  • pg_basebackup çıxışını Windows-da stdout-a düzəldin (Haribabu Kommi)
  • Stdout-a yazılmış bir backup, fayl təsvirini ikili rejimə qoymamaqdan dolayı bozuk məlumatları ehtiva edir.
  • 2gb-dən çox faylları düzgün idarə etmək üçün pg_rewind (Kuntal Ghosh, Michael Paquier)
  • Adətən bu cür fayllar PostgreSQL məlumat kataloqlarında görünməyəcək, lakin bəzi hallarda mövcud ola bilərlər.
  • Sona çatma WAL rekordunun wal_level = minimal (Bruce Momjian) olmamasını təmin etmək üçün pg_upgrade
  • Bu vəziyyət yenilənən gözləmə serverlərinin yenidən qurulmasına mane ola bilər.
  • pg_xlogdump-in WAL rekord uzunluğunun hesablanması (Andres Freund)
  • Postgres_fdw'de, ALTER SERVER ya da ALTER USER MAPPING komutlarından sonra (Kyotaro Horiguchi) uzaq serverlərə keçid əlaqələrini yenidən bərpa edin
  • Bu, keçid parametrlərinə təsir edən variant dəyişikliklərinin dərhal tətbiq olunmasını təmin edir.
  • Postgres_fdw'de, uzaqdan əməliyyatın idarə komutlarının ləğvinə icazə verin (Robert Haas, Rafia Sabih)
  • Bu dəyişiklik bizə daha çox hallarda əvvəllərdən daha çox məsafədə uzaq məsafəli server üçün gözləmə rejimindən qaçmaq üçün imkan verir.
  • Uzantılar üçün daha çox yer təmin etmək üçün MAX_SYSCACHE_CALLBACKS artırın (Tom Lane)
  • Gcc (Tom Lane) ilə paylaşılan kitabxanalar qurarkən həmişə -fPIC-deyil, -fpic istifadə edin
  • Bu, daha fərqli olduğu platformalarda daha genişlənmə kitabxanalarını dəstəkləyir.
  • MSVC qurur, openssl kitabxanasının bir VC alt-dizisi (Andrew Dunstan) içində olmadığı vəziyyətdədir
  • MSVC qurur, libxml2 başlıq faylları üçün düzgün yolu əlavə edin (Andrew Dunstan)
  • Bu, standart Windows libxml2 quruluşlarında ətrafdakı şeyi hərəkət etmək üçün köhnə ehtiyacları düzəldir.
  • MSVC qurur, tcl86.lib (Noah Misch) adlı bir Tcl kitabxanasını tanıyır
  • MSVC qurur, vVcregress.pl komanda xəttində (Andrew Dunstan) PROVE_FLAGS parametrlərini şərəfləndirir

Oxşar proqram

Berkeley DB
Berkeley DB

27 Apr 17

Jaxer
Jaxer

3 Jun 15

GOODS
GOODS

11 May 15

Şərh PostgreSQL

Şərhlər tapılmadı
Şərh əlavə
Images yandırın!