Sürekli yedekleme modunu kullanan bir Azure Cosmos DB hesabını geri yükleme
ŞUNLAR IÇIN GEÇERLIDIR: NoSQL MongoDB Gremlin Masa
Azure Cosmos DB'nin belirli bir noktaya geri yükleme özelliği, bir kapsayıcı içinde yanlışlıkla yapılan bir değişiklikten kurtarmanıza, silinen bir hesabı, veritabanını veya kapsayıcıyı geri yüklemenize veya herhangi bir bölgeye (yedeklemelerin bulunduğu) geri yüklemenize yardımcı olur. Sürekli yedekleme modu son 30 gün içindeki herhangi bir noktaya geri yükleme işlemi yapmanızı sağlar.
Bu makalede geri yükleme zamanını belirleme ve canlı veya silinmiş bir Azure Cosmos DB hesabını geri yükleme işlemi açıklanır. Azure portalı, PowerShell, CLI veya Azure Resource Manager şablonu kullanarak hesabın nasıl geri yükleneceği gösterilir.
Azure portalını kullanarak hesabı geri yükleme
Canlı hesabı yanlışlıkla yapılan değişikliklerden geri yükleme
Azure portalını kullanarak canlı hesabın tamamını veya altındaki seçili veritabanlarını ve kapsayıcıları geri yükleyebilirsiniz. Verilerinizi geri yüklemek için aşağıdaki adımları kullanın:
Azure Portal’ında oturum açın.
Azure Cosmos DB hesabınıza gidin ve Belirli Bir Noktaya Geri Yükleme dikey penceresini açın.
Not
Azure portalındaki geri yükleme dikey penceresi yalnızca izniniz varsa
Microsoft.DocumentDB/locations/restorableDatabaseAccounts/*/read
doldurulur. Bu izni ayarlama hakkında daha fazla bilgi edinmek için Yedekleme ve geri yükleme izinleri makalesine bakın.Geri yüklemek için aşağıdaki ayrıntıları doldurun:
Geri Yükleme Noktası (UTC) – Son 30 gün içindeki bir zaman damgası. Hesap bu zaman damgasında mevcut olmalıdır. Geri yükleme noktasını UTC olarak belirtebilirsiniz. Geri yüklemek istediğinizde saniyeye yakın olabilir. Geri yükleme noktasını tanımlama konusunda yardım almak için Buraya tıklayın bağlantısını seçin.
Konum : Hesabın geri yüklendiği hedef bölge. Hesap, belirtilen zaman damgasında (örneğin, Batı ABD veya Doğu ABD) bu bölgede bulunmalıdır. Bir hesap yalnızca kaynak hesabın bulunduğu bölgelere geri yüklenebilir.
Kaynağı Geri Yükle – Geri yüklemek için Tüm hesap'ı veya seçili bir veritabanını/kapsayıcıyı seçebilirsiniz. Veritabanları ve kapsayıcılar verilen zaman damgasında bulunmalıdır. Geri yükleme noktasına ve seçilen konuma bağlı olarak, geri yükleme kaynakları doldurulur ve bu da kullanıcının geri yüklenmesi gereken belirli veritabanlarını veya kapsayıcıları seçmesine olanak tanır.
Kaynak grubu - Hedef hesabın oluşturulacağı ve geri yükleneceği kaynak grubu. Kaynak grubu zaten var olmalıdır.
Hedef Hesabı Geri Yükle – Hedef hesap adı. Hedef hesap adının, yeni bir hesap oluştururken izlediğiniz yönergelerin aynısını izlemesi gerekir. Bu hesap, kaynak hesabınızın bulunduğu bölgede geri yükleme işlemi tarafından oluşturulur.
Yukarıdaki parametreleri seçtikten sonra, geri yüklemeyi başlatmak için Gönder düğmesini seçin. Geri yükleme maliyeti, verilerin boyutuna ve seçilen bölgedeki yedekleme depolama alanının maliyetine bağlı olarak tek seferlik bir ücrettir. Daha fazla bilgi edinmek için Fiyatlandırma bölümüne bakın.
Geri yükleme devam ederken kaynak hesabın silinmesi geri yüklemenin başarısız olmasına neden olabilir.
Canlı hesaplar için geri yüklenebilen zaman damgası
Silinmeyen Azure Cosmos DB canlı hesaplarını geri yüklemek için kapsayıcı için her zaman en son geri yüklenebilir zaman damgasını belirlemek en iyi yöntemdir. Daha sonra hesabı en son sürümüne geri yüklemek için bu zaman damgasını kullanabilirsiniz.
Geri yükleme süresini belirlemek için olay akışını kullanma
Azure portalında geri yükleme noktası süresini doldururken, geri yükleme noktasını tanımlama konusunda yardıma ihtiyacınız varsa Buraya tıklayın bağlantısını seçin, sizi olay akışı dikey penceresine götürür. Olay akışı, kaynak hesabın veritabanları ve kapsayıcılarında oluşturma, değiştirme, silme olaylarının tam uygunluk listesini sağlar.
Örneğin, belirli bir kapsayıcı silinmeden veya güncelleştirilmeden önceki noktaya geri yüklemek istiyorsanız bu olay akışını denetleyin. Olaylar, son olaylar en üstte olacak şekilde kronolojik olarak, oluştukları zamanın azalan sırasına göre görüntülenir. Zamanınızı daha da daraltmak için sonuçlara göz atabilir ve etkinlikten önceki veya sonraki süreyi seçebilirsiniz.
Not
Olay akışı, öğe kaynaklarındaki değişiklikleri görüntülemez. Geri yükleme için her zaman son 30 gün içinde (hesap mevcut olduğu sürece) herhangi bir zaman damgasını el ile belirtebilirsiniz.
Silinen hesabı geri yükleme
Silinen bir hesabı silindikten sonra 30 gün içinde tamamen geri yüklemek için Azure portalını kullanabilirsiniz. Silinen bir hesabı geri yüklemek için aşağıdaki adımları kullanın:
Azure Portal’ında oturum açın.
Genel arama çubuğunda Azure Cosmos DB kaynaklarını arayın. Tüm mevcut hesaplarınızı listeler.
Ardından Geri Yükle düğmesini seçin. Geri Yükle dikey penceresinde, silinme tarihinden itibaren 30 gün olan saklama süresi içinde geri yüklenebilen silinmiş hesapların listesi görüntülenir.
Geri yüklemek istediğiniz hesabı seçin.
Not
Azure portalındaki geri yükleme dikey penceresi yalnızca izniniz varsa
Microsoft.DocumentDB/locations/restorableDatabaseAccounts/*/read
doldurulur. Bu izni ayarlama hakkında daha fazla bilgi edinmek için Yedekleme ve geri yükleme izinleri makalesine bakın.Geri yükleneceği hesabı seçin ve silinen hesabı geri yüklemek için aşağıdaki ayrıntıları girin:
Geri Yükleme Noktası (UTC) – Son 30 gün içindeki bir zaman damgası. Hesabın bu zaman damgasında mevcut olması gerekir. Geri yükleme noktasını UTC olarak belirtin. Geri yüklemek istediğinizde saniyeye yakın olabilir.
Konum : Hesabın geri yüklenmesi gereken hedef bölge. Kaynak hesabın belirtilen zaman damgasında bu bölgede bulunması gerekir. Örnek Batı ABD veya Doğu ABD.
Kaynak grubu - Hedef hesabın oluşturulacağı ve geri yükleneceği kaynak grubu. Kaynak grubu zaten var olmalıdır.
Hedef Hesabı Geri Yükle – Hedef hesap adının, yeni bir hesap oluştururken kullandığınız yönergeleri izlemesi gerekir. Bu hesap, kaynak hesabınızın bulunduğu bölgede geri yükleme işlemi tarafından oluşturulur.
Geri yükleme işleminin durumunu izleme
Geri yükleme işlemini başlatdıktan sonra portalın sağ üst köşesindeki Bildirim zili simgesini seçin. Geri yüklenen hesabın durumunu gösteren bir bağlantı verir. Geri yükleme işlemi devam ederken hesabın durumu Oluşturuluyor olur, geri yükleme işlemi tamamlandıktan sonra hesap durumu Çevrimiçi olarak değişir.
Geri yüklenen hesaptan geri yükleme ayrıntılarını alma
Geri yükleme işlemi tamamlandıktan sonra, geri yüklediğiniz kaynak hesabın ayrıntılarını veya geri yükleme süresini bilmek isteyebilirsiniz.
Azure portalından geri yükleme ayrıntılarını almak için aşağıdaki adımları kullanın:
Şablonu dışarı aktar bölmesine gidin. Geri yüklenen hesaba karşılık gelen bir JSON şablonu açar.
Azure PowerShell kullanarak hesabı geri yükleme
Hesabı geri yüklemeden önce Azure PowerShell'in en son sürümünü veya 9.6.0'dan sonraki bir sürümü yükleyin. Ardından Azure hesabınıza bağlanın ve aşağıdaki komutlarla gerekli aboneliği seçin:
Aşağıdaki komutu kullanarak Azure'da oturum açın:
Connect-AzAccount
Aşağıdaki komutla belirli bir aboneliği seçin:
Select-AzSubscription -Subscription <SubscriptionName>
NoSQL hesabı için API için geri yükleme işlemini tetikleme
Aşağıdaki cmdlet, hedef hesap, kaynak hesap, konum, kaynak grubu, PublicNetworkAccess, DisableTtl ve zaman damgasını kullanarak geri yükleme komutuyla geri yükleme işlemini tetikleme örneğidir:
Restore-AzCosmosDBAccount `
-TargetResourceGroupName "MyRG" `
-TargetDatabaseAccountName "RestoredAccountName" `
-SourceDatabaseAccountName "SourceDatabaseAccountName" `
-RestoreTimestampInUtc "UTCTime" `
-Location "AzureRegionName" `
-PublicNetworkAccess Disabled `
-DisableTtl $true
Örnek 1: Hesabın tamamını geri yükleme:
Restore-AzCosmosDBAccount `
-TargetResourceGroupName "MyRG" `
-TargetDatabaseAccountName "Pitracct" `
-SourceDatabaseAccountName "source-sql" `
-RestoreTimestampInUtc "2021-01-05T22:06:00" `
-Location "West US" `
-PublicNetworkAccess Disabled
-DisableTtl $false
Ayarlanmadıysa PublicNetworkAccess
, geri yüklenen hesaba genel ağdan erişilebilir, lütfen geri yüklenen hesap için genel ağ erişimini devre dışı bırakma seçeneğine geçtiğinizden Disabled
PublicNetworkAccess
emin olun. DisableTtl'in $true olarak ayarlanması, geri yüklenen hesapta TTL'nin devre dışı bırakılmasını sağlar, parametre sağlamaz, daha önce ayarlanmışsa TTL etkin hesabı geri yükler.
Not
Genel ağ erişimi devre dışı bırakılmış olarak geri yükleme için Az.CosmosDB'nin gereken en düşük kararlı sürümü 1.12.0'dır.
Örnek 2: Belirli koleksiyonları ve veritabanlarını geri yükleme. Bu örnek MyCol1, MyCol2 koleksiyonlarını MyDB1'den ve altındaki tüm kapsayıcıları içeren MyDB2 veritabanının tamamını geri yükler.
$datatabaseToRestore1 = New-AzCosmosDBDatabaseToRestore -DatabaseName "MyDB1" -CollectionName "MyCol1", "MyCol2"
$datatabaseToRestore2 = New-AzCosmosDBDatabaseToRestore -DatabaseName "MyDB2"
Restore-AzCosmosDBAccount `
-TargetResourceGroupName "MyRG" `
-TargetDatabaseAccountName "Pitracct" `
-SourceDatabaseAccountName "SourceSql" `
-RestoreTimestampInUtc "2021-01-05T22:06:00" `
-DatabasesToRestore $datatabaseToRestore1, $datatabaseToRestore2 `
-Location "West US"
Örnek 3: Gremlin Hesabı için API geri yükleme. Bu örnek graf1, MyDB1'den graph2 ve altındaki tüm kapsayıcıları içeren MyDB2 veritabanının tamamını geri yükler.
$datatabaseToRestore1 = New-AzCosmosDBGremlinDatabaseToRestore -DatabaseName "MyDB1" -GraphName "graph1", "graph2"
$datatabaseToRestore2 = New-AzCosmosDBGremlinDatabaseToRestore -DatabaseName "MyDB2"
Restore-AzCosmosDBAccount `
-TargetResourceGroupName "MyRG" `
-TargetDatabaseAccountName "Pitracct" `
-SourceDatabaseAccountName "SourceGremlin" `
-RestoreTimestampInUtc "2022-04-05T22:06:00" `
-DatabasesToRestore $datatabaseToRestore1, $datatabaseToRestore2 `
-Location "West US"
Örnek 4: Tablo Hesabı için API'yi geri yükleme. Bu örnek tablo1, tablo1 tablolarını MyDB1'dengeri yükler
$tablesToRestore = New-AzCosmosDBTableToRestore -TableName "table1", "table2"
Restore-AzCosmosDBAccount `
-TargetResourceGroupName "MyRG" `
-TargetDatabaseAccountName "Pitracct" `
-SourceDatabaseAccountName "SourceTable" `
-RestoreTimestampInUtc "2022-04-06T22:06:00" `
-TablesToRestore $tablesToRestore `
-Location "West US"
CLI kullanarak yönetilen kimlikle yapılandırılmış sürekli bir hesabı geri yüklemek için
Müşteri Tarafından Yönetilen Anahtar (CMK) sürekli hesabını geri yüklemek için lütfen burada sağlanan adımlara bakın
Geri yüklenen hesaptan geri yükleme ayrıntılarını alma
Az.CosmosDB
Modül 1.12.0 sürümünü içeri aktarın ve geri yükleme ayrıntılarını almak için aşağıdaki komutu çalıştırın. restoreTimestamp, restoreParameters nesnesinin altında olacaktır:
Get-AzCosmosDBAccount -ResourceGroupName MyResourceGroup -Name MyCosmosDBDatabaseAccount
NoSQL için API için geri yüklenebilen kaynakları listeleme
Numaralandırma cmdlet'leri, çeşitli zaman damgalarında geri yükleme için kullanılabilen kaynakları bulmanıza yardımcı olur. Ayrıca, geri yüklenebilen hesap, veritabanı ve kapsayıcı kaynaklarında önemli olayların akışını da sağlar.
Geçerli abonelikte geri yüklenebilen tüm hesapları listeleme
Geçerli abonelikte Get-AzCosmosDBRestorableDatabaseAccount
geri yüklenebilen tüm hesapları listelemek için PowerShell komutunu çalıştırın.
Yanıt, geri yüklenebilen tüm veritabanı hesaplarını (hem canlı hem de silinmiş) ve bunların geri yüklenebileceği bölgeleri içerir.
{
"accountName": "SampleAccount",
"apiType": "Sql",
"creationTime": "2020-08-08T01:04:52.070190+00:00",
"deletionTime": null,
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DocumentDB/locations/West US/restorableDatabaseAccounts/23e99a35-cd36-4df4-9614-f767a03b9995",
"identity": null,
"location": "West US",
"name": "23e99a35-cd36-4df4-9614-f767a03b9995",
"restorableLocations": [
{
"creationTime": "2020-08-08T01:04:52.945185+00:00",
"deletionTime": null,
"location": "West US",
"regionalDatabaseAccountInstanceId": "30701557-ecf8-43ce-8810-2c8be01dccf9"
},
{
"creationTime": "2020-08-08T01:15:43.507795+00:00",
"deletionTime": null,
"location": "East US",
"regionalDatabaseAccountInstanceId": "8283b088-b67d-4975-bfbe-0705e3e7a599"
}
],
"tags": null,
"type": "Microsoft.DocumentDB/locations/restorableDatabaseAccounts"
}
CreationTime
Hesap için veya DeletionTime
gibi, bölge için de bir CreationTime
veya DeletionTime
vardır. Bu saatler, bu bölgeye geri yüklemek için doğru bölgeyi ve geçerli bir zaman aralığını seçmenize olanak sağlar.
Canlı veritabanı hesabında SQL veritabanlarının tüm sürümlerini listeleme
Veritabanlarının tüm sürümlerini listelemek, veritabanının gerçek var olma zamanının bilinmediği bir senaryoda doğru veritabanını seçmenize olanak tanır.
Veritabanlarının tüm sürümlerini listelemek için aşağıdaki PowerShell komutunu çalıştırın. Bu komut yalnızca canlı hesaplarla çalışır. DatabaseAccountInstanceId
ve Location
parametreleri cmdlet'in Get-AzCosmosDBRestorableDatabaseAccount
yanıtında ve location
özelliklerinden alınırname
. özniteliği, DatabaseAccountInstanceId
geri yüklenen kaynak veritabanı hesabının özelliğini ifade eder instanceId
:
Get-AzCosmosdbSqlRestorableDatabase `
-Location "East US" `
-DatabaseAccountInstanceId <DatabaseAccountInstanceId>
Canlı veritabanı hesabındaki bir veritabanının SQL kapsayıcılarının tüm sürümlerini listeleme
SQL kapsayıcılarının tüm sürümlerini listelemek için aşağıdaki komutu kullanın. Bu komut yalnızca canlı hesaplarla çalışır. DatabaseRId
parametresi, geri yüklemek istediğiniz veritabanının parametresidirResourceId
. Cmdlet'in ownerResourceid
yanıtında bulunan özniteliğin değeridir Get-AzCosmosdbSqlRestorableDatabase
. Yanıt, bu veritabanı içindeki tüm kapsayıcılarda gerçekleştirilen işlemlerin listesini de içerir.
Get-AzCosmosdbSqlRestorableContainer `
-DatabaseAccountInstanceId "d056a4f8-044a-436f-80c8-cd3edbc94c68" `
-DatabaseRId "AoQ13r==" `
-Location "West US"
Belirli bir zaman damgasında geri yüklenebilen veritabanlarını veya kapsayıcıları bulma
Belirli bir zaman damgasında geri yüklenebilen veritabanlarının veya kapsayıcıların listesini almak için aşağıdaki komutu kullanın. Bu komut yalnızca canlı hesaplarla çalışır.
Get-AzCosmosdbSqlRestorableResource `
-DatabaseAccountInstanceId "d056a4f8-044a-436f-80c8-cd3edbc94c68" `
-Location "West US" `
-RestoreLocation "East US" `
-RestoreTimestamp "2020-07-20T16:09:53+0000"
MongoDB için API'de geri yüklenebilen kaynakları listeleme
Aşağıda açıklanan numaralandırma komutları, çeşitli zaman damgalarında geri yükleme için kullanılabilecek kaynakları bulmanıza yardımcı olur. Ayrıca, geri yüklenebilen hesap, veritabanı ve kapsayıcı kaynaklarında önemli olayların akışını da sağlar. Bu komutlar yalnızca canlı hesaplarda çalışır ve NoSQL komutları için API'ye benzer ancak yerine komut adında sql
ile bulunurMongoDB
.
Canlı veritabanı hesabında MongoDB veritabanlarının tüm sürümlerini listeleme
Get-AzCosmosdbMongoDBRestorableDatabase `
-DatabaseAccountInstanceId "d056a4f8-044a-436f-80c8-cd3edbc94c68" `
-Location "West US"
Canlı veritabanı hesabındaki bir veritabanının MongoDB koleksiyonlarının tüm sürümlerini listeleme
Get-AzCosmosdbMongoDBRestorableCollection `
-DatabaseAccountInstanceId "d056a4f8-044a-436f-80c8-cd3edbc94c68" `
-DatabaseRId "AoQ13r==" `
-Location "West US"
Belirli bir zaman damgasında ve bölgede geri yüklenebilen mongoDB veritabanı hesabının tüm kaynaklarını listeleme
Get-AzCosmosdbMongoDBRestorableResource `
-DatabaseAccountInstanceId "d056a4f8-044a-436f-80c8-cd3edbc94c68" `
-Location "West US" `
-RestoreLocation "West US" `
-RestoreTimestamp "2020-07-20T16:09:53+0000"
Gremlin için API için geri yüklenebilen kaynakları listeleme
Numaralandırma cmdlet'leri, çeşitli zaman damgalarında geri yükleme için kullanılabilen kaynakları bulmanıza yardımcı olur. Ayrıca, geri yüklenebilen hesap, veritabanı ve grafik kaynaklarında önemli olayların akışını da sağlar.
Canlı veritabanı hesabında Gremlin veritabanlarının tüm sürümlerini listeleme
Veritabanlarının tüm sürümlerini listelemek, veritabanının gerçek var olma zamanının bilinmediği bir senaryoda doğru veritabanını seçmenize olanak tanır.
Veritabanlarının tüm sürümlerini listelemek için aşağıdaki PowerShell komutunu çalıştırın. Bu komut yalnızca canlı hesaplarla çalışır. DatabaseAccountInstanceId
ve Location
parametreleri cmdlet'in Get-AzCosmosDBRestorableDatabaseAccount
yanıtında ve location
özelliklerinden alınırname
. özniteliği, DatabaseAccountInstanceId
geri yüklenen kaynak veritabanı hesabının özelliğini ifade eder instanceId
:
Get-AzCosmosdbGremlinRestorableDatabase `
-Location "East US" `
-DatabaseAccountInstanceId <DatabaseAccountInstanceId>
Canlı veritabanı hesabındaki bir veritabanının gremlin grafiklerinin tüm sürümlerini listeleme
Gremlin grafları için API'nin tüm sürümlerini listelemek için aşağıdaki komutu kullanın. Bu komut yalnızca canlı hesaplarla çalışır. DatabaseRId
parametresi, geri yüklemek istediğiniz veritabanının parametresidirResourceId
. Cmdlet'in ownerResourceid
yanıtında bulunan özniteliğin değeridir Get-AzCosmosdbGremlinRestorableDatabase
. Yanıt, bu veritabanı içindeki tüm grafiklerde gerçekleştirilen işlemlerin listesini de içerir.
Get-AzCosmosdbGremlinRestorableGraph `
-DatabaseAccountInstanceId "d056a4f8-044a-436f-80c8-cd3edbc94c68" `
-DatabaseRId "AoQ13r==" `
-Location "West US"
Belirli bir zaman damgasında geri yüklenebilen veritabanlarını veya grafikleri bulma
Belirli bir zaman damgasında geri yüklenebilen veritabanlarının veya grafiklerin listesini almak için aşağıdaki komutu kullanın. Bu komut yalnızca canlı hesaplarla çalışır.
Get-AzCosmosdbGremlinRestorableResource `
-DatabaseAccountInstanceId "d056a4f8-044a-436f-80c8-cd3edbc94c68" `
-Location "West US" `
-RestoreLocation "East US" `
-RestoreTimestamp "2020-07-20T16:09:53+0000"
Tablo için API için geri yüklenebilen kaynakları listeleme
Numaralandırma cmdlet'leri, çeşitli zaman damgalarında geri yükleme için kullanılabilen kaynakları bulmanıza yardımcı olur. Ayrıca, geri yüklenebilen hesap ve tablo kaynakları üzerinde önemli olayların akışını da sağlar.
Canlı veritabanı hesabındaki bir veritabanının tablolarının tüm sürümlerini listeleme
Tabloların tüm sürümlerini listelemek için aşağıdaki komutu kullanın. Bu komut yalnızca canlı hesaplarla çalışır.
Get-AzCosmosdbTableRestorableTable `
-DatabaseAccountInstanceId "d056a4f8-044a-436f-80c8-cd3edbc94c68" `
-Location "West US"
Belirli bir zaman damgasında geri yüklenebilen tabloları bulma
Belirli bir zaman damgasında geri yüklenebilen tabloların listesini almak için aşağıdaki komutu kullanın. Bu komut yalnızca canlı hesaplarla çalışır.
Get-AzCosmosdbTableRestorableResource `
-DatabaseAccountInstanceId "d056a4f8-044a-436f-80c8-cd3edbc94c68" `
-Location "West US" `
-RestoreLocation "East US" `
-RestoreTimestamp "2020-07-20T16:09:53+0000"
Azure CLI kullanarak hesabı geri yükleme
Hesabı geri yüklemeden önce aşağıdaki adımlarla Azure CLI'yı yükleyin:
Azure CLI'nın en son sürümünü yükleme
- Azure CLI'nın en son sürümünü veya 2.52.0'dan sonraki bir sürümü yükleyin.
- CLI'yi zaten yüklediyseniz komutunu çalıştırarak
az upgrade
en son sürüme güncelleştirin. Bu komut yalnızca 2.52.0'dan yüksek CLI sürümüyle çalışır. Önceki bir sürümünüz varsa, en son sürümü yüklemek için yukarıdaki bağlantıyı kullanın.
Oturum açın ve aboneliğinizi seçin
- Komutuyla
az login
Azure hesabınızda oturum açın. - komutunu kullanarak
az account set -s <subscriptionguid>
gerekli aboneliği seçin.
- Komutuyla
Azure CLI ile geri yükleme işlemini tetikleme
Geri yüklemeyi tetiklemenin en basit yolu, geri yükleme komutunu hedef hesap, kaynak hesabı, konum, kaynak grubu, zaman damgası (UTC'de) ve isteğe bağlı olarak veritabanı ve kapsayıcı adları ile vermektir. Geri yükleme işlemini tetikleme örnekleri aşağıda verilmiştir:
Mevcut bir hesaptan geri yükleyerek yeni bir Azure Cosmos DB hesabı oluşturma
az cosmosdb restore \
--target-database-account-name <MyRestoredCosmosDBDatabaseAccount> \
--account-name <MySourceAccount> \
--restore-timestamp 2020-07-13T16:03:41+0000 \
--resource-group <MyResourceGroup> \
--location "West US" \
--public-network-access Disabled \
--disable-ttl True
Ayarlanmadıysa --public-network-access
, geri yüklenen hesaba genel ağdan erişilebilir. Geri yüklenen hesap için --public-network-access
genel ağ erişimini engelleme seçeneğine geçtiğinden Disabled
emin olun. disable-ttl ayarının $true olarak ayarlanması, geri yüklenen hesapta TTL'nin devre dışı bırakılmasını sağlar ve bu parametrenin sağlanmaması, daha önce ayarlanmışsa TTL'nin etkinleştirildiği hesabı geri yükler.
Not
Genel ağ erişimi devre dışı bırakılmış olarak geri yükleme için azure-cli'nin en düşük kararlı sürümü 2.52.0'dır.
Mevcut bir veritabanı hesabından yalnızca seçili veritabanlarını ve kapsayıcıları geri yükleyerek yeni bir Azure Cosmos DB hesabı oluşturma
az cosmosdb restore \
--resource-group MyResourceGroup \
--target-database-account-name MyRestoredCosmosDBDatabaseAccount \
--account-name MySourceAccount \
--restore-timestamp 2020-07-13T16:03:41+0000 \
--location "West US" \
--databases-to-restore name=MyDB1 collections=Collection1 Collection2 \
--databases-to-restore name=MyDB2 collections=Collection3 Collection4
Gremlin hesabı için mevcut bir API'den yalnızca seçili veritabanlarını ve grafikleri geri yükleyerek Gremlin hesabı için yeni bir Azure Cosmos DB API'sini oluşturma
az cosmosdb restore \
--resource-group MyResourceGroup \
--target-database-account-name MyRestoredCosmosDBDatabaseAccount \
--account-name MySourceAccount \
--restore-timestamp 2022-04-13T16:03:41+0000 \
--location "West US" \
--gremlin-databases-to-restore name=MyDB1 graphs=graph1 graph2 \
--gremlin-databases-to-restore name=MyDB2 graphs =graph3 graph4
Tablo hesabı için mevcut bir API'den yalnızca seçili tabloları geri yükleyerek Tablo hesabı için yeni bir Azure Cosmos DB API'sini oluşturma
az cosmosdb restore \
--resource-group MyResourceGroup \
--target-database-account-name MyRestoredCosmosDBDatabaseAccount \
--account-name MySourceAccount \
--restore-timestamp 2022-04-14T06:03:41+0000 \
--location "West US" \
--tables-to-restore table1 table2
Geri yüklenen hesaptan geri yükleme ayrıntılarını alma
Geri yükleme ayrıntılarını almak için aşağıdaki komutu çalıştırın. Komut çıktısı az cosmosdb show
özelliğin createMode
değerini gösterir. Değer Geri Yükle olarak ayarlanırsa, hesabın başka bir hesaptan geri yüklendiğini gösterir. özelliği, restoreParameters
kaynak hesap kimliğine sahip olan gibi restoreSource
daha fazla ayrıntıya sahiptir. parametresindeki restoreSource
son GUID, kaynak hesabın guid değeridir instanceId
. restoreTimestamp
ve nesnesinin restoreParameters
altında olacaktır:
az cosmosdb show --name MyCosmosDBDatabaseAccount --resource-group MyResourceGroup
NoSQL için API için geri yüklenebilen kaynakları listeleme
Aşağıda açıklanan numaralandırma komutları, çeşitli zaman damgalarında geri yükleme için kullanılabilecek kaynakları bulmanıza yardımcı olur. Ayrıca, geri yüklenebilen hesap, veritabanı ve kapsayıcı kaynaklarında önemli olayların akışını da sağlar.
Geçerli abonelikte geri yüklenebilen tüm hesapları listeleme
Geçerli abonelikte geri yüklenebilen tüm hesapları listelemek için aşağıdaki Azure CLI komutunu çalıştırın
az cosmosdb restorable-database-account list --account-name "Pitracct"
Yanıt, geri yüklenebilen tüm veritabanı hesaplarını (hem canlı hem de silinmiş) ve bunların geri yüklenebileceği bölgeleri içerir:
{
"accountName": "Pitracct",
"apiType": "Sql",
"creationTime": "2021-01-08T23:34:11.095870+00:00",
"deletionTime": null,
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DocumentDB/locations/West US/restorableDatabaseAccounts/abcd1234-d1c0-4645-a699-abcd1234",
"identity": null,
"location": "West US",
"name": "abcd1234-d1c0-4645-a699-abcd1234",
"restorableLocations": [
{
"creationTime": "2021-01-08T23:34:11.095870+00:00",
"deletionTime": null,
"locationName": "West US",
"regionalDatabaseAccountInstanceId": "f02df26b-c0ec-4829-8bef-3482d36e6230"
}
],
"tags": null,
"type": "Microsoft.DocumentDB/locations/restorableDatabaseAccounts"
}
CreationTime
Hesap için veya DeletionTime
gibi, bölge için de bir CreationTime
veya DeletionTime
vardır. Bu saatler, bu bölgeye geri yüklemek için doğru bölgeyi ve geçerli bir zaman aralığını seçmenize olanak sağlar.
Canlı veritabanı hesabındaki veritabanlarının tüm sürümlerini listeleme
Veritabanlarının tüm sürümlerini listelemek, veritabanının gerçek var olma zamanının bilinmediği bir senaryoda doğru veritabanını seçmenize olanak tanır.
Veritabanlarının tüm sürümlerini listelemek için aşağıdaki Azure CLI komutunu çalıştırın. Bu komut yalnızca canlı hesaplarla çalışır. instance-id
ve parametreleri komutun location
yanıtında az cosmosdb restorable-database-account list
ve location
özelliklerinden alınırname
. instanceId
Özniteliği ayrıca geri yüklenen kaynak veritabanı hesabının bir özelliğidir:
az cosmosdb sql restorable-database list \
--instance-id "abcd1234-d1c0-4645-a699-abcd1234" \
--location "West US"
Bu komut çıktısı artık bir veritabanının ne zaman oluşturulduğunu ve silindiğini gösterir.
[
{
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DocumentDB/locations/West US/restorableDatabaseAccounts/abcd1234-d1c0-4645-a699-abcd1234/restorableSqlDatabases/40e93dbd-2abe-4356-a31a-35567b777220",
"name": "40e93dbd-2abe-4356-a31a-35567b777220",
"resource": {
"database": {
"id": "db1"
},
"eventTimestamp": "2021-01-08T23:27:25Z",
"operationType": "Create",
"ownerId": "db1",
"ownerResourceId": "YuZAAA=="
},
},
{
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DocumentDB/locations/West US/restorableDatabaseAccounts/abcd1234-d1c0-4645-a699-abcd1234/restorableSqlDatabases/243c38cb-5c41-4931-8cfb-5948881a40ea",
"name": "243c38cb-5c41-4931-8cfb-5948881a40ea",
"resource": {
"database": {
"id": "spdb1"
},
"eventTimestamp": "2021-01-08T23:25:25Z",
"operationType": "Create",
"ownerId": "spdb1",
"ownerResourceId": "OIQ1AA=="
},
}
]
Canlı veritabanı hesabındaki bir veritabanının SQL kapsayıcılarının tüm sürümlerini listeleme
SQL kapsayıcılarının tüm sürümlerini listelemek için aşağıdaki komutu kullanın. Bu komut yalnızca canlı hesaplarla çalışır. database-rid
parametresi, geri yüklemek istediğiniz veritabanının parametresidirResourceId
. Komutun yanıtında bulunan özniteliğin değeridir ownerResourceid
az cosmosdb sql restorable-database list
.
az cosmosdb sql restorable-container list \
--instance-id "abcd1234-d1c0-4645-a699-abcd1234" \
--database-rid "OIQ1AA==" \
--location "West US"
Bu komut çıktısı, bu veritabanı içindeki tüm kapsayıcılarda gerçekleştirilen işlemlerin listesini içerir:
[
{
"eventTimestamp": "2021-01-08T23:25:29Z",
"operationType": "Replace",
"ownerId": "procol3",
"ownerResourceId": "OIQ1APZ7U18="
},
{
"eventTimestamp": "2021-01-08T23:25:26Z",
"operationType": "Create",
"ownerId": "procol3",
"ownerResourceId": "OIQ1APZ7U18="
},
]
Belirli bir zaman damgasında geri yüklenebilen veritabanlarını veya kapsayıcıları bulma
Belirli bir zaman damgasında geri yüklenebilen veritabanlarının veya kapsayıcıların listesini almak için aşağıdaki komutu kullanın. Bu komut yalnızca canlı hesaplarla çalışır.
az cosmosdb sql restorable-resource list \
--instance-id "abcd1234-d1c0-4645-a699-abcd1234" \
--location "West US" \
--restore-location "West US" \
--restore-timestamp "2021-01-10T01:00:00+0000"
[
{
"collectionNames": [
"procol1",
"procol2"
],
"databaseName": "db1"
},
{
"collectionNames": [
"procol3",
"spcol1"
],
"databaseName": "spdb1"
}
]
MongoDB hesabı için API için geri yüklenebilen kaynakları listeleme
Aşağıda açıklanan numaralandırma komutları, çeşitli zaman damgalarında geri yükleme için kullanılabilecek kaynakları bulmanıza yardımcı olur. Ayrıca, geri yüklenebilen hesap, veritabanı ve kapsayıcı kaynaklarında önemli olayların akışını da sağlar. Bu komutlar yalnızca canlı hesaplarda çalışır.
Canlı veritabanı hesabında MongoDB veritabanlarının tüm sürümlerini listeleme
az cosmosdb mongodb restorable-database list \
--instance-id "abcd1234-d1c0-4645-a699-abcd1234" \
--location "West US"
Canlı veritabanı hesabındaki bir veritabanının MongoDB koleksiyonlarının tüm sürümlerini listeleme
az cosmosdb mongodb restorable-collection list \
--instance-id "abcd1234-d1c0-4645-a699-abcd1234" \
--database-rid "AoQ13r==" \
--location "West US"
Belirli bir zaman damgasında ve bölgede geri yüklenebilen mongodb veritabanı hesabının tüm kaynaklarını listeleme
az cosmosdb mongodb restorable-resource list \
--instance-id "abcd1234-d1c0-4645-a699-abcd1234" \
--location "West US" \
--restore-location "West US" \
--restore-timestamp "2020-07-20T16:09:53+0000"
Canlı veritabanı hesabındaki veritabanlarının tüm sürümlerini listeleme
Aşağıda açıklanan numaralandırma komutları, çeşitli zaman damgalarında geri yükleme için kullanılabilecek kaynakları bulmanıza yardımcı olur. Ayrıca, geri yüklenebilen hesap, veritabanı ve grafik kaynaklarında önemli olayların akışını da sağlar. Bu komutlar yalnızca canlı hesaplarda çalışır.
az cosmosdb gremlin restorable-database list \
--instance-id "abcd1234-d1c0-4645-a699-abcd1234" \
--location "West US"
Bu komut çıktısı artık bir veritabanının ne zaman oluşturulduğunu ve silindiğini gösterir.
[ {
"id": "/subscriptions/abcd1234-b6ac-4328-a753-abcd1234/providers/Microsoft.DocumentDB/locations/eastus2euap/restorableDatabaseAccounts/abcd1234-4316-483b-8308-abcd1234/restorableGremlinDatabases/abcd1234-0e32-4036-ac9d-abcd1234",
"name": "abcd1234-0e32-4036-ac9d-abcd1234",
"resource": {
"eventTimestamp": "2022-02-09T17:10:18Z",
"operationType": "Create",
"ownerId": "db1",
"ownerResourceId": "1XUdAA==",
"rid": "ymn7kwAAAA=="
},
"type": "Microsoft.DocumentDB/locations/restorableDatabaseAccounts/restorableGremlinDatabases"
}
]
Canlı veritabanı hesabındaki bir veritabanının gremlin grafiklerinin tüm sürümlerini listeleme
az cosmosdb gremlin restorable-graph list \
--instance-id "abcd1234-d1c0-4645-a699-abcd1234" \
--database-rid "OIQ1AA==" \
--location "West US"
Bu komut çıktısı, bu veritabanı içindeki tüm kapsayıcılarda gerçekleştirilen işlemlerin listesini içerir:
[ {
"id": "/subscriptions/23587e98-b6ac-4328-a753-03bcd3c8e744/providers/Microsoft.DocumentDB/locations/eastus2euap/restorableDatabaseAccounts/a00d591d-4316-483b-8308-44193c5f3073/restorableGraphs/1792cead-4307-4032-860d-3fc30bd46a20",
"name": "1792cead-4307-4032-860d-3fc30bd46a20",
"resource": {
"eventTimestamp": "2022-02-09T17:10:31Z",
"operationType": "Create",
"ownerId": "graph1",
"ownerResourceId": "1XUdAPv9duQ=",
"rid": "IcWqcQAAAA=="
},
"type": "Microsoft.DocumentDB/locations/restorableDatabaseAccounts/restorableGraphs"
}
]
Belirli bir zaman damgasında geri yüklenebilen veritabanlarını veya grafikleri bulma
az cosmosdb gremlin restorable-resource list \
--instance-id "abcd1234-d1c0-4645-a699-abcd1234" \
--location "West US" \
--restore-location "West US" \
--restore-timestamp "2021-01-10T01:00:00+0000"
Bu komut çıktısı, geri yüklenebilen grafikleri gösterir:
[
{
"databaseName": "db1",
"graphNames": [ "graph1", "graph3", "graph2" ]
}
]
Tablo hesabı için API için geri yüklenebilen kaynakları listeleme
Aşağıda açıklanan numaralandırma komutları, çeşitli zaman damgalarında geri yükleme için kullanılabilecek kaynakları bulmanıza yardımcı olur. Ayrıca, tablo kaynakları için geri yüklenebilen hesapta ve API'de önemli olayların akışını da sağlar. Bu komutlar yalnızca canlı hesaplarda çalışır.
Canlı veritabanı hesabındaki tabloların tüm sürümlerini listeleme
az cosmosdb table restorable-table list \
--instance-id "abcd1234-d1c0-4645-a699-abcd1234"
--location "West US"
[ {
"id": "/subscriptions/23587e98-b6ac-4328-a753-03bcd3c8e744/providers/Microsoft.DocumentDB/locations/WestUS/restorableDatabaseAccounts/7e4d666a-c6ba-4e1f-a4b9-e92017c5e8df/restorableTables/59781d91-682b-4cc2-93a3-c25d03fab159",
"name": "59781d91-682b-4cc2-93a3-c25d03fab159",
"resource": {
"eventTimestamp": "2022-02-09T17:09:54Z",
"operationType": "Create",
"ownerId": "table1",
"ownerResourceId": "tOdDAKYiBhQ=",
"rid": "9pvDGwAAAA=="
},
"type": "Microsoft.DocumentDB/locations/restorableDatabaseAccounts/restorableTables"
},
{"id": "/subscriptions/23587e98-b6ac-4328-a753-03bcd3c8e744/providers/Microsoft.DocumentDB/locations/eastus2euap/restorableDatabaseAccounts/7e4d666a-c6ba-4e1f-a4b9-e92017c5e8df/restorableTables/2c9f35eb-a14c-4ab5-a7e0-6326c4f6b785",
"name": "2c9f35eb-a14c-4ab5-a7e0-6326c4f6b785",
"resource": {
"eventTimestamp": "2022-02-09T20:47:53Z",
"operationType": "Create",
"ownerId": "table3",
"ownerResourceId": "tOdDALBwexw=",
"rid": "01DtkgAAAA=="
},
"type": "Microsoft.DocumentDB/locations/restorableDatabaseAccounts/restorableTables"
},
]
Belirli bir zaman damgasında ve bölgede geri yüklenebilen Tablo hesabı için BIR API'nin tüm kaynaklarını listeleme
az cosmosdb table restorable-resource list \
--instance-id "abcd1234-d1c0-4645-a699-abcd1234" \
--location "West US" \
--restore-location "West US" \
--restore-timestamp "2020-07-20T16:09:53+0000"
Komutun sonucu aşağıdadır.
{
"tableNames": [
"table1",
"table3",
"table2"
]
}
Azure Resource Manager şablonunu kullanarak geri yükleme
Ayrıca Azure Resource Manager (ARM) şablonunu kullanarak bir hesabı geri yükleyebilirsiniz. Şablonu tanımlarken aşağıdaki parametreleri ekleyin:
ARM şablonunu kullanarak NoSQL veya MongoDB hesabı için API'yi geri yükleme
- parametresini
createMode
Geri Yükle olarak ayarlayın. restoreParameters
değerini tanımlayın, değerinrestoreSource
kaynak hesabınız için komutun çıkışından ayıklandığınaaz cosmosdb restorable-database-account list
dikkat edin. Geri yüklemeyi yapmak için hesap adınızın Örnek Kimliği özniteliği kullanılır.- parametresini
restoreMode
PointInTime olarak ayarlayın ve değeri yapılandırınrestoreTimestampInUtc
.
NoSQL veya MongoDB için Azure Cosmos DB API'sinin hesabını geri yüklemek için aşağıdaki ARM şablonunu kullanın. Bundan sonra diğer API'ler için örnekler sağlanmıştır.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"name": "vinhpitrarmrestore-kal3",
"type": "Microsoft.DocumentDB/databaseAccounts",
"apiVersion": "2023-04-15",
"location": "West US",
"properties": {
"locations": [
{
"locationName": "West US"
}
],
"databaseAccountOfferType": "Standard",
"createMode": "Restore",
"restoreParameters": {
"restoreSource": "/subscriptions/2296c272-5d55-40d9-bc05-4d56dc2d7588/providers/Microsoft.DocumentDB/locations/West US/restorableDatabaseAccounts/6a18ecb8-88c2-4005-8dce-07b44b9741df",
"restoreMode": "PointInTime",
"restoreTimestampInUtc": "6/24/2020 4:01:48 AM",
"restoreWithTtlDisabled": "true"
}
}
}
]
}
ARM şablonunu kullanarak Gremlin hesabı için API'yi geri yükleme
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"name": "ademo-pitr1",
"type": "Microsoft.DocumentDB/databaseAccounts",
"apiVersion": "2023-04-15",
"location": "West US",
"properties": {
"locations": [
{
"locationName": "West US"
}
],
"backupPolicy": {
"type": "Continuous"
},
"databaseAccountOfferType": "Standard",
"createMode": "Restore",
"restoreParameters": {
"restoreSource": "/subscriptions/2296c272-5d55-40d9-bc05-4d56dc2d7588/providers/Microsoft.DocumentDB/locations/West US/restorableDatabaseAccounts/5cb9d82e-ec71-430b-b977-cd6641db85bc",
"restoreMode": "PointInTime",
"restoreTimestampInUtc": "2021-10-27T23:20:46Z",
"gremlinDatabasesToRestore": [{
"databaseName": "db1",
"graphNames": [
"graph1", "graph2"
]
}]
}
}
}
]
}
ARM şablonunu kullanarak Tablo hesabı için API'yi geri yükleme
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"name": "ademo-pitr1",
"type": "Microsoft.DocumentDB/databaseAccounts",
"apiVersion": "2023-04-15",
"location": "West US",
"properties": {
"locations": [
{
"locationName": "West US"
}
],
"backupPolicy": {
"type": "Continuous"
},
"databaseAccountOfferType": "Standard",
"createMode": "Restore",
"restoreParameters": {
"restoreSource": "/subscriptions/1296c352-5d33-40d9-bc05-4d56dc2a7521/providers/Microsoft.DocumentDB/locations/West US/restorableDatabaseAccounts/4bcb9d82e-ec71-430b-b977-cd6641db85ad",
"restoreMode": "PointInTime",
"restoreTimestampInUtc": "2022-04-13T10:20:46Z",
"tablesToRestore": [
"table1", "table2"
]
}
}
}
]
}
Ardından Azure PowerShell veya Azure CLI kullanarak şablonu dağıtın. Aşağıdaki örnekte, şablonun Azure CLI komutuyla nasıl dağıtılacağı gösterilmektedir:
az deployment group create -g <ResourceGroup> --template-file <RestoreTemplateFilePath>
Sonraki adımlar
- Azure portalı, PowerShell, CLI veya Azure Resource Manager'ı kullanarak sürekli yedekleme sağlayın.
- Düzenli yedeklemeden sürekli yedeklemeye bir hesaba geçiş.
- Sürekli yedekleme modu kaynak modeli.
- Sürekli yedekleme moduyla verileri geri yüklemek için gereken izinleri yönetin.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin