İngilizceFransızcaİspanyolca

OnWorks favicon'u

pg_rewind - Bulutta Çevrimiçi

Ubuntu Online, Fedora Online, Windows çevrimiçi emülatörü veya MAC OS çevrimiçi emülatörü üzerinden OnWorks ücretsiz barındırma sağlayıcısında pg_rewind çalıştırın

Bu, Ubuntu Online, Fedora Online, Windows çevrimiçi emülatörü veya MAC OS çevrimiçi emülatörü gibi birden fazla ücretsiz çevrimiçi iş istasyonumuzdan birini kullanarak OnWorks ücretsiz barındırma sağlayıcısında çalıştırılabilen pg_rewind komutudur.

Program:

ADI


pg_rewind - PostgreSQL veri dizinini başka bir veri dizini ile senkronize edin
ilkinden çatallandı

SİNOPSİS


pg_rewind [seçenek...] {-D | --hedef-pgdata} rehber {--kaynak-pgdata=rehber |
--kaynak-sunucu=bağ}

TANIM


pg_rewind, bir PostgreSQL kümesini aynı kümenin başka bir kopyasıyla senkronize etmek için bir araçtır.
küme, kümelerin zaman çizelgeleri ayrıldıktan sonra. Tipik bir senaryo, bir
eski ana sunucu, yük devretme sonrasında yeni ana sunucuyu izleyen bir bekleme olarak tekrar çevrimiçi olur.

Sonuç, hedef veri dizinini kaynak dizinle değiştirmeye eşdeğerdir. Tüm
yapılandırma dosyaları da dahil olmak üzere dosyalar kopyalanır. pg_rewind'in bir alma işlemine göre avantajı
yeni temel yedekleme veya rsync gibi araçlar, pg_rewind'in okuma gerektirmemesidir
kümedeki tüm değişmemiş dosyalar. Bu, veritabanı büyük olduğunda çok daha hızlı hale getirir
ve bunun sadece küçük bir kısmı kümeler arasında farklılık gösterir.

pg_rewind, belirlemek için kaynak ve hedef kümelerin zaman çizelgesi geçmişlerini inceler.
ayrıldıkları ve hedef kümenin pg_xlog'unda WAL bulmayı umduğu nokta
dizin, sapma noktasına kadar geri döner. Tipik yük devretmede
sapmadan hemen sonra hedef kümenin kapatıldığı senaryo, bu bir
sorun, ancak hedef küme sapmadan sonra uzun bir süre çalıştıysa, eski
WAL dosyaları artık mevcut olmayabilir. Bu durumda, manuel olarak kopyalanabilirler.
Pg_xlog dizinine WAL arşivi. WAL arşivinden eksik dosyaları getirme
otomatik olarak şu anda desteklenmemektedir.

pg_rewind çalıştırıldıktan sonra hedef sunucu ilk kez başlatıldığında,
kurtarma moduna geçin ve kaynak sunucuda oluşturulan tüm WAL'leri şu noktadan sonra tekrar oynatın:
uyuşmazlık. pg_rewind sırasında WAL'ın bir kısmı kaynak sunucuda artık mevcut değilse
çalıştırıldı ve bu nedenle pg_rewind oturumu tarafından kopyalanamadı, yapılması gerekiyor
hedef sunucu başlatıldığında kullanılabilir. Bu oluşturularak yapılabilir
recovery.conf dosyasını hedef veri dizininde uygun bir geri yükleme_komutu.

pg_rewind, hedef sunucunun wal_log_hints seçeneğinin etkinleştirilmiş olmasını gerektirir
postgresql.conf'ta veya küme başlatıldığında veri sağlama toplamlarının etkinleştirildiğini
initdb ile. Bunların hiçbiri şu anda varsayılan olarak açık değildir. full_page_writes ayrıca olmalıdır
etkinleştirilmiş. Varsayılan budur.

SEÇENEKLER


pg_rewind aşağıdaki komut satırı bağımsız değişkenlerini kabul eder:

-D rehber
--target-pgdata=rehber
Bu seçenek, kaynakla senkronize edilen hedef veri dizinini belirtir.
Hedef sunucu, pg_rewind çalıştırmadan önce temiz bir şekilde kapatılmalıdır.

--kaynak-pgdata=rehber
Hedefi senkronize etmek için kaynak sunucunun veri dizinine giden yolu belirtir
ile birlikte. Ne zaman --kaynak-pgdata kullanılıyorsa, kaynak sunucu temiz bir şekilde kapatılmalıdır.

--kaynak-sunucu=bağ
Kaynak PostgreSQL sunucusuna bağlanmak için bir libpq bağlantı dizesi belirtir.
ile hedefi senkronize edin. Bağlantı normal (replikasyon olmayan) olmalıdır
süper kullanıcı erişimi ile bağlantı. Sunucu çalışır durumda olmalı ve
kurtarma modunda.

-n
--kuru çalışma
Hedef dizini gerçekten değiştirmek dışında her şeyi yapın.

-P
--ilerleme
İlerleme raporlamasını etkinleştirir. Bunu açmak, yaklaşık bir ilerleme sağlayacaktır
kaynak kümeden veri kopyalarken rapor.

- hata ayıklama
Çoğunlukla geliştiricilerin hata ayıklaması için yararlı olan ayrıntılı hata ayıklama çıktısı yazdırın
pg_rewind.

-V
--versiyon
Sürüm bilgilerini görüntüleyin, ardından çıkın.

-?
--yardım et
Yardımı göster, sonra çık.

ÇEVRE


Ne zaman --kaynak-sunucu seçenek kullanılır, pg_rewind ortam değişkenlerini de kullanır
libpq tarafından desteklenir (belgelerde Bölüm 31.14, “Ortam Değişkenleri”ne bakın).

NOTLAR


Ne kadar it çalışır
Temel fikir, aşağıdakiler dışında her şeyi yeni kümeden eski kümeye kopyalamaktır.
aynı olduğunu bildiğimiz bloklar.

1. Son kontrol noktasından başlayarak eski kümenin WAL günlüğünü tarayın.
yeni kümenin zaman çizelgesi geçmişinin eski kümeden ayrıldığı nokta. İçin
her WAL kaydında, dokunulan veri bloklarını not edin. Bu bir liste verir
yeni kümeden sonra eski kümede değiştirilen tüm veri bloklarının
çatallandı.

2. Değiştirilen tüm blokları yeni kümeden eski kümeye kopyalayın.

3. Tıkanma ve yapılandırma dosyaları gibi diğer tüm dosyaları yeni kümeden
eski küme, ilişki dosyaları dışındaki her şey.

4. Yük devretme sırasında oluşturulan kontrol noktasından başlayarak yeni kümeden WAL'ı uygulayın.
(Açıkçası, pg_rewind WAL'ı uygulamaz, sadece bir yedek etiket oluşturur
PostgreSQL başlatıldığında, bundan itibaren yeniden oynatmaya başlayacağını belirten dosya
kontrol noktası ve gerekli tüm WAL'yi uygulayın.)

onworks.net hizmetlerini kullanarak pg_rewind çevrimiçi kullanın


Ücretsiz Sunucular ve İş İstasyonları

Windows ve Linux uygulamalarını indirin

Linux komutları

Ad