Veritabanı düzeyinde geri yükleme sayesinde, bir ApsaraDB RDS for PostgreSQL örneğindeki belirli veritabanlarını tüm örneği geri yüklemeye gerek kalmadan önceki bir duruma döndürebilirsiniz. Yanlışlıkla yapılan değişiklikleri geri almak, silinen verileri kurtarmak veya geçmiş bir anlık görüntüyü sorgulamak gerektiğinde bu özelliği kullanın.
Bu özellik genel ön izleme aşamasındadır ve ücretsizdir.
Kullanım senaryoları
Kaza sonucu veri kaybı: Bir geliştirici yanlışlıkla bir tabloyu siler veya satırları üzerine yazar. Etkilenen veritabanını yalnızca olay öncesindeki bir noktaya geri yükleyin.
Geçmiş veri analizi: Üretim örneğini etkilemeden analiz çalıştırmak üzere bir veritabanının belirli bir zamandaki kopyasını alın.
Çalışma mekanizması
Geri yükleme işlemi, bir yedekleme setinden veya tam yedekleme artı artımlı günlük yedekleme verilerinden okuma yapar ve seçilen veritabanlarını orijinal örneğe veya aynı bölgedeki başka bir mevcut örneğe yazar. Geri yükleme hızı yaklaşık 20 Mbit/s'tir ve veri hacmine göre değişir.
Adlandırma davranışı: Geri yükleme başlamadan önce sistem, her bir geri yüklenen veritabanının adının sonuna _backup ekler (örneğin, orders adı orders_backup olarak değişir). Onaylamadan önce adı değiştirebilirsiniz.
Geri yükleme aralığı; veri yedekleme saklama süresine, günlük yedekleme saklama süresine ve RDS örneğinizde veritabanı düzeyinde geri yükleme özelliğini etkinleştirdiğiniz zamana bağlı olarak değişir.
Ön koşullar
Başlamadan önce aşağıdaki koşulların sağlandığından emin olun:
-
RDS örneği aşağıdaki tüm gereksinimleri karşılar:
Ana sürüm: PostgreSQL 10 ile PostgreSQL 17 arası
Sürüm: RDS Basic Edition, RDS High-availability Edition veya RDS Cluster Edition
Depolama türü: Geliştirilmiş SSD (ESSD) veya Premium ESSD
Faturalama türü: kullandıkça öde veya abonelik (Serverless örnekleri desteklenmez)
Örnek 10 Ekim 2022 tarihinden önce oluşturulduysa ve özgün mimariyi kullanıyorsa, devam etmeden önce hizmete bağlı rol (SLR) yetkilendirmesini tamamlayın ve küçük motor sürümünü en son sürüme güncelleyin.
Örnek üzerinde veritabanı düzeyinde geri yükleme özelliği etkinleştirilmiştir. Bkz. Veritabanı düzeyinde geri yüklemeyi etkinleştirme.
İpucu: Örnek sürümünü, depolama türünü ve faturalama türünü kontrol etmek için örneğin Basic Information sayfasına gidin.
Sınırlamalar
| Sınırlama | Ayrıntılar |
|---|---|
| Hedef geri yükleme | Yalnızca orijinal örnek veya aynı bölgede, aynı ana motor sürümüne sahip mevcut bir örnek. Yeni bir örneğe geri yükleme desteklenmez. |
| Geri yükleme granülerliği | Yalnızca veritabanları. Tek tek tablolar ve görünümler geri yüklenemez. |
| Tablo boyutu | 100 GB'dan büyük tablolar geri yüklenemez. |
| Ayrılmış veritabanı adları | Adları postgres, rdsadmin veya template ile başlayan veritabanları geri yüklenemez. |
Veritabanı düzeyinde geri yüklemeyi etkinleştirme
Bu özelliği etkinleştirmek çalışan iş yüklerini etkilemez.
Instances sayfasına gidin. Üst gezinme çubuğunda örneğin bulunduğu bölgeyi seçin. Örneği bulun ve kimliğine tıklayın.
Sol gezinme bölmesinde Backup and Restoration öğesine tıklayın.
Backup Strategy sekmesine tıklayın.
Data Backup Settings yanındaki Edit seçeneğine tıklayın. İletişim kutusunda Restore Individual Database/Table seçeneğini açın.
Save seçeneğine tıklayın.
Veritabanlarını geri yükleme
Instances sayfasına gidin. Üst gezinme çubuğunda örneğin bulunduğu bölgeyi seçin. Örneği bulun ve kimliğine tıklayın.
-
Sol gezinme bölmesinde Backup and Restoration öğesine tıklayın. Görüntülenen sayfada Restore Individual Database/Table seçeneğine tıklayın.
Restore Individual Database/Table düğmesi görünmüyorsa tüm ön koşulların karşılandığını doğrulayın.
-
Geri yükleme parametrelerini yapılandırın.
Hem veri yedekleme dosyaları hem de günlük yedekleme dosyaları için maksimum saklama süresi 730 gündür. Örneğiniz için geri yüklenebilir zaman aralığını kontrol etmek amacıyla DescribeLocalAvailableRecoveryTime API işlemini çağırın.
Parametre Açıklama Restore To Hedef örnek: orijinal örnek veya aynı bölgede, aynı ana motor sürümüne sahip başka bir örnek. Restore Speed Standard olarak sabittir. Restore Method By Backup Set: Belirli bir yedekleme setinden geri yükler. By Time: Yalnızca günlük yedekleme etkinleştirildiğinde kullanılabilir. Sistem, tam yedekleme verilerini ardından artımlı günlük yedekleme verilerini oynatarak günlük yedekleme saklama süresi içindeki herhangi bir noktaya geri yüklemenize olanak tanır. Örneğin, hem veri yedekleme saklama süresi hem de günlük yedekleme saklama süresi 7 günse son 7 gün içindeki herhangi bir noktaya geri yükleme yapabilirsiniz. -
Geri yüklenecek veritabanlarını seçin ve ardından OK seçeneğine tıklayın.
Bir seferde en fazla 50 veritabanı seçin.
Sistem, her bir geri yüklenen veritabanı adının sonuna
_backupekler (örneğin,mydbadımydb_backupolarak değişir). Onaylamadan önce adı değiştirebilirsiniz.Hedef örnekte seçilen tüm veritabanlarını barındıracak kadar kullanılabilir depolama alanı olduğundan emin olun.
Geri yükleme ilerlemesini görüntüleme
Bir geri yükleme görevi gönderdikten sonra örnek ayrıntıları sayfasının üst kısmında Task Center seçeneğine tıklayarak görev durumunu ve ilerlemesini kontrol edin.
Örnek ayrıntıları sayfasının üst kısmında Task Center seçeneğine tıklayın.
Görev listesinde Task Status ve Task Progress sütunlarını kontrol edin.
Görev kayıtlarını zaman aralığına (1 Hour, 1 Day, 7 Days veya 30 Days) ya da görev durumuna göre filtreleyin.
Geri yükleme sayfası ilerleme bilgilerini göstermiyorsa tarayıcınızı yenileyip tekrar kontrol edin.
Geri yüklemeyi doğrulama
Geri yükleme görevi tamamlandıktan sonra hedef örneğin Databases sayfasına giderek geri yüklenen veritabanlarının göründüğünü onaylayın. Aşağıdakileri doğrulayın:
Geri yüklenen veritabanlarına erişilebiliyor ve veriler doğru görünüyor.
Geri yüklenen verilere işaret eden bağlantı dizeleri doğru veritabanı adını kullanır (geri yükleme sırasında yeniden adlandırmadıysanız
_backupuzantılı sürüm).
SSS
Konsolda "The operation failed. The RDS instance is not in a ready state." hatası görünüyor. Ne yapmalıyım?
Geri yükleme görevleri sırayla çalışır. Bu hata, başka bir geri yükleme görevinin hala devam ettiğini veya tamamlanmadığını gösterir. Mevcut görevin bitmesini bekleyin ve ardından yeniden deneyin.
Geri yüklenen veritabanı boş. Neden?
Seçtiğiniz zamanda orijinal veritabanında veri yoktu. Veritabanının veri içerdiği bir zaman noktası seçin.
Tek tek veritabanlarını geri yüklemenin başka yolları var mı?
BDRC kullanarak RDS örneklerinin ve Elastic Compute Service (ECS) örneklerinde kendi kendine yönetilen veritabanlarının yedeğini alıp geri yükleyebilir ve yedekleme setlerini yerel olarak indirebilirsiniz. Bkz. Overview ve Restore data by database or table.
Sonraki adımlar
ApsaraDB RDS for PostgreSQL örneğindeki tüm verileri geri yükleme — tek tek veritabanları yerine tüm örneği geri yükler.
pg_restore kullanarak mantıksal bir yedekleme dosyasından verileri geri yükleme — pg_restore kullanarak mantıksal bir yedekten belirli tabloları geri yükler.
Verileri kendi kendine yönetilen bir PostgreSQL örneğine geri yükleme — CSV dosyası veya SQL dosyası kullanarak yedekleme verilerini kendi kendine yönetilen bir PostgreSQL örneğine aktarır.