Sürekli yedekleme hesapları için en son geri yüklenebilen zaman damgasını alma
ŞUNLAR IÇIN GEÇERLIDIR: NoSQL
MongoDB
Gremlin
Masa
Bu makalede, sürekli yedekleme modu olan hesaplar için en son geri yüklenebilen zaman damgasının nasıl alındığı açıklanır. Azure PowerShell ve Azure CLI kullanarak en son geri yüklenebilen süreyi nasıl elde etmek istediğiniz açıklanır ve PowerShell ve CLI komutları için istek ve yanıt biçimi sağlanır.
Bu özellik NoSQL kapsayıcıları için Azure Cosmos DB API'sinde, MongoDB API'sinde, Tablo API'sinde ve Gremlin grafları için API'de desteklenir.
Önemli
Çok bölgeli yazma hesaplarında en son geri yüklenebilen zaman damgası, çakışma çözümleme zaman damgası (crts
) ile belirlenir.
SQL kapsayıcısı
PowerShell
Get-AzCosmosDBSqlContainerBackupInformation -AccountName <System.String> `
-DatabaseName <System.String> `
[-DefaultProfile <Microsoft.Azure.Commands.Common.Authentication.Abstractions.Core.IAzureContextContainer>] `
-Location <System.String> `
-Name <System.String> `
-ResourceGroupName <System.String> [<CommonParameters>]
Örnek istek:
Get-AzCosmosDBSqlContainerBackupInformation -ResourceGroupName "rg" `
-AccountName "sqlpitracc" `
-DatabaseName "db1" `
-Name "container1" `
-Location "eastus"
Örnek yanıt (UTC biçiminde):
LatestRestorableTimestamp
-------------------------
10/26/2021 6:24:25 PM
CLI
az cosmosdb sql retrieve-latest-backup-time -g {resourcegroup} \
-a {accountname} \
-d {db_name} \
-c {container_name} \
-l {location}
Örnek istek:
az cosmosdb sql retrieve-latest-backup-time -g "rg" \
-a "sqlpitracc" \
-d "db1" \
-c "container1" \
-l "eastus"
Örnek yanıt (UTC biçiminde):
{
"continuousBackupInformation": {
"latestRestorableTimestamp": "10/26/2021 5:27:45 PM"
}
}
SQL veritabanı
Bir veritabanı için en son geri yüklenebilen zaman damgasını almak için aşağıdaki betiği kullanın. Bu betik, belirtilen veritabanındaki tüm kapsayıcılarda yinelenir ve tüm kapsayıcılarının en az geri yüklenebilen zaman damgasını döndürür.
Function Get-LatestRestorableTimestampForSqlDatabase {
[CmdletBinding()]
param(
[Parameter(Position = 0, mandatory = $true)]
[string] $resourceGroupName,
[Parameter(Position = 1, mandatory = $true)]
[string] $accountName,
[Parameter(Position = 2, mandatory = $true)]
[string] $databaseName,
[Parameter(Position = 3, mandatory = $true)]
[string] $location)
Write-Host
Write-Host "Latest restorable timestamp for a database is minimum of restorable timestamps of all the underlying containers"
Write-Host
Write-Debug "Listing all containers in database: $databaseName"
$containers = Get-AzCosmosDBSqlContainer -ResourceGroupName $resourceGroupName -AccountName $accountName -DatabaseName $databaseName
If (-Not $containers) {
throw "Error: Found no containers to restore in the given database."
}
Write-Debug "Found $($containers.Length) containers under database $databaseName"
$latestRestorableTimestampForDatabase = [DateTime]::MaxValue
foreach ($container in $containers) {
Write-Debug "Getting latest restorable timestamp for container: $($container.Name)"
$latestRestorableTimestampForContainer = Get-AzCosmosDBSqlContainerBackupInformation -ResourceGroupName $resourceGroupName -AccountName $accountName -DatabaseName $databaseName -Name $container.Name -Location $location
Write-Debug "Latest Restorable Timestamp for container $($container.Name): $($latestRestorableTimestampForContainer.LatestRestorableTimestamp)"
$latestRestorableTimestampForContainerDateTime = [DateTime]$latestRestorableTimestampForContainer.LatestRestorableTimestamp
If ($latestRestorableTimestampForContainerDateTime -lt $latestRestorableTimestampForDatabase) {
Write-Debug "Latest Restorable Timestamp for container $($container.Name) is less than current database restorable timestamp: $latestRestorableTimestampForDatabase"
$latestRestorableTimestampForDatabase = $latestRestorableTimestampForContainerDateTime
}
Write-Debug "Latest Restorable Timestamp for database so far: $latestRestorableTimestampForDatabase"
}
if ($latestRestorableTimestampForDatabase -eq [DateTime]::MaxValue) {
throw "Error: Failed to retrieve latest backup timestamp for database: $databaseName"
}
Write-Debug "Latest Restorable Timestamp in UTC for database $($databaseName): $latestRestorableTimestampForDatabase"
return $latestRestorableTimestampForDatabase
}
Söz dizimi:
Get-LatestRestorableTimestampForSqlDatabase `
-ResourceGroupName <resourceGroup> `
-AccountName <accountName> `
-DatabaseName <databaseName> `
-Location <location>
Örnek istek:
Import-Module .\LatestRestorableDatabaseForSqlDatabase.ps1
Get-LatestRestorableTimestampForSqlDatabase `
-ResourceGroupName rg `
-AccountName sqlpitracc `
-DatabaseName db1 `
-Location eastus
Örnek yanıt (UTC biçiminde):
Latest restorable timestamp for a database is minimum of restorable timestamps of all the underlying containers
Wednesday, November 3, 2021 8:02:44 PM
SQL hesabı
SQL hesabı için en son geri yüklenebilen zaman damgasını almak için aşağıdaki betiği kullanın. Bu betik, bu hesaptaki tüm kapsayıcılarda yinelenir ve tüm kapsayıcılarının en az geri yüklenebilen zaman damgasını döndürür.
Function Get-LatestRestorableTimestampForSqlAccount {
[CmdletBinding()]
param(
[Parameter(Position = 0, mandatory = $true)]
[string] $resourceGroupName,
[Parameter(Position = 1, mandatory = $true)]
[string] $accountName,
[Parameter(Position = 2, mandatory = $true)]
[string] $location)
Write-Host
Write-Host "Latest restorable timestamp for an account is minimum of restorable timestamps of all the underlying containers"
Write-Host
Write-Debug "Listing all databases in account: $accountName"
$databases = Get-AzCosmosDBSqlDatabase -ResourceGroupName $resourceGroupName -AccountName $accountName
Write-Debug "Found $($databases.Length) databases under account $accountName"
$latestRestorableTimestampForAccount = [DateTime]::MaxValue
foreach ($database in $databases) {
Write-Debug "Listing all containers in database: $($database.Name)"
$containers = Get-AzCosmosDBSqlContainer -ResourceGroupName $resourceGroupName -AccountName $accountName -DatabaseName $($database.Name)
If (-Not $containers) {
throw "Error: Found no containers to restore in the given database."
}
Write-Debug "Found $($containers.Length) containers under database $($database.Name)"
foreach ($container in $containers) {
Write-Debug "Getting latest restorable timestamp for container: $($container.Name)"
$latestRestorableTimestampForContainer = Get-AzCosmosDBSqlContainerBackupInformation -ResourceGroupName $resourceGroupName -AccountName $accountName -DatabaseName $database.Name -Name $container.Name -Location $location
Write-Debug "Latest Restorable Timestamp for container $($container.Name): $($latestRestorableTimestampForContainer.LatestRestorableTimestamp)"
$latestRestorableTimestampForContainerDateTime = [DateTime]$latestRestorableTimestampForContainer.LatestRestorableTimestamp
If ($latestRestorableTimestampForContainerDateTime -lt $latestRestorableTimestampForAccount) {
Write-Debug "Latest Restorable Timestamp for container $($container.Name) is less than current database restorable timestamp: $latestRestorableTimestampForAccount"
$latestRestorableTimestampForAccount = $latestRestorableTimestampForContainerDateTime
}
Write-Debug "Latest Restorable Timestamp for database so far: $latestRestorableTimestampForAccount"
}
}
if ($latestRestorableTimestampForAccount -eq [DateTime]::MaxValue) {
throw "Error: Failed to retrieve latest backup timestamp for account: $accountName"
}
Write-Debug "Latest Restorable Timestamp in UTC for account $($accountName): $latestRestorableTimestampForAccount"
return $latestRestorableTimestampForAccount
}
Söz dizimi:
Get-LatestRestorableTimestampForSqlAccount `
-ResourceGroupName <resourceGroupName> `
-AccountName <accountName> `
-Location <location>
Örnek istek:
Import-Module .\LatestRestorableTimestampForSqlAccount.ps1
Get-LatestRestorableTimestampForSqlAccount `
-ResourceGroupName rg `
-AccountName sqlpitracc `
-location eastus
Örnek yanıt (UTC biçiminde):
Latest restorable timestamp for an account is minimum of restorable timestamps of all the underlying containers
Wednesday, November 3, 2021 8:11:03 PM
MongoDB koleksiyonu
PowerShell
Get-AzCosmosDBMongoDBCollectionBackupInformation `
-AccountName <System.String> `
-DatabaseName <System.String> `
[-DefaultProfile <Microsoft.Azure.Commands.Common.Authentication.Abstractions.Core.IAzureContextContainer>] `
-Location <System.String> `
-Name <System.String> `
-ResourceGroupName <System.String> [<CommonParameters>]
Örnek istek:
Get-AzCosmosDBMongoDBCollectionBackupInformation `
-ResourceGroupName "rg" `
-AccountName "mongodbpitracc" `
-DatabaseName "db1" `
-Name "col1" `
-Location "eastus"
Örnek yanıt (UTC biçiminde):
LatestRestorableTimestamp
-------------------------
10/26/2021 6:27:22 PM
CLI
az cosmosdb mongodb retrieve-latest-backup-time \
-g {resourcegroup} \
-a {accountname} \
-d {db_name} \
-c {collection_name} \
-l {location}
Örnek istek:
az cosmosdb mongodb retrieve-latest-backup-time \
-g "rg" \
-a "mongodbpitracc" \
-d "db1" \
-c "col1" \
-l "eastus"
Örnek yanıt:
{
"continuousBackupInformation": {
"latestRestorableTimestamp": "10/26/2021 5:27:45 PM"
}
}
MongoDB veritabanı
Bir veritabanı için en son geri yüklenebilen zaman damgasını almak için aşağıdaki betiği kullanın. Bu betik, bu veritabanındaki tüm koleksiyonlarda yinelenir ve tüm koleksiyonlarının en az geri yüklenebilen zaman damgasını döndürür.
Function Get-LatestRestorableTimestampForMongoDBDatabase {
[CmdletBinding()]
param(
[Parameter(Position = 0, mandatory = $true)]
[string] $resourceGroupName,
[Parameter(Position = 1, mandatory = $true)]
[string] $accountName,
[Parameter(Position = 2, mandatory = $true)]
[string] $databaseName,
[Parameter(Position = 3, mandatory = $true)]
[string] $location)
Write-Host
Write-Host "Latest restorable timestamp for a database is minimum of restorable timestamps of all the underlying collections"
Write-Host
Write-Debug "Listing all collections in database: $databaseName"
$collections = Get-AzCosmosDBMongoDBCollection -ResourceGroupName $resourceGroupName -AccountName $accountName -DatabaseName $databaseName
If (-Not $collections) {
throw "Error: Found no collections to restore in the given database."
}
Write-Debug "Found $($collections.Length) collections under database $databaseName"
$latestRestorableTimestampForDatabase = [DateTime]::MaxValue
foreach ($collection in $collections) {
Write-Debug "Getting latest restorable timestamp for collection: $($collection.Name)"
$latestRestorableTimestampForCollection = Get-AzCosmosDBMongoDBCollectionBackupInformation -ResourceGroupName $resourceGroupName -AccountName $accountName -DatabaseName $databaseName -Name $collection.Name -Location $location
Write-Debug "Latest Restorable Timestamp for collection $($collection.Name): $($latestRestorableTimestampForCollection.LatestRestorableTimestamp)"
$latestRestorableTimestampForCollectionDateTime = [DateTime]$latestRestorableTimestampForCollection.LatestRestorableTimestamp
If ($latestRestorableTimestampForCollectionDateTime -lt $latestRestorableTimestampForDatabase) {
Write-Debug "Latest Restorable Timestamp for collection $($collection.Name) is less than current database restorable timestamp: $latestRestorableTimestampForDatabase"
$latestRestorableTimestampForDatabase = $latestRestorableTimestampForCollectionDateTime
}
Write-Debug "Latest Restorable Timestamp for database so far: $latestRestorableTimestampForDatabase"
}
if ($latestRestorableTimestampForDatabase -eq [DateTime]::MaxValue) {
throw "Error: Failed to retrieve latest backup timestamp for database: $databaseName"
}
Write-Debug "Latest Restorable Timestamp in UTC for database $($databaseName): $latestRestorableTimestampForDatabase"
return $latestRestorableTimestampForDatabase
}
Söz dizimi:
Get-LatestRestorableTimestampForMongoDBDatabase `
-ResourceGroupName <resourceGroup> `
-AccountName <account> `
-DatabaseName <database> `
-Location <location>
Örnek istek:
Import-Module .\LatestRestorableTimestampForMongoDBDatabase.ps1
Get-LatestRestorableTimestampForMongoDBDatabase -ResourceGroupName rg -accountName mongopitracc -databaseName db1 -location eastus
Örnek yanıt (UTC biçiminde):
Latest restorable timestamp for a database is minimum of restorable timestamps of all the underlying collections
Wednesday, November 3, 2021 8:31:27 PM
MongoDB hesabı
MongoDB hesabı için en son geri yüklenebilen zaman damgasını almak için aşağıdaki betiği kullanabilirsiniz. Bu betik, bu hesaptaki tüm koleksiyonlarda yinelenir ve tüm koleksiyonlarının en az geri yüklenebilen zaman damgasını döndürür.
Function Get-LatestRestorableTimestampForMongoDBAccount {
[CmdletBinding()]
param(
[Parameter(Position = 0, mandatory = $true)]
[string] $resourceGroupName,
[Parameter(Position = 1, mandatory = $true)]
[string] $accountName,
[Parameter(Position = 2, mandatory = $true)]
[string] $location)
Write-Host
Write-Host "Latest restorable timestamp for an account is minimum of restorable timestamps of all the underlying collections"
Write-Host
Write-Debug "Listing all databases in account: $accountName"
$databases = Get-AzCosmosDBMongoDBDatabase -ResourceGroupName $resourceGroupName -AccountName $accountName
Write-Debug "Found $($databases.Length) databases under account $accountName"
$latestRestorableTimestampForAccount = [DateTime]::MaxValue
foreach ($database in $databases) {
Write-Debug "Listing all collections in database: $($database.Name)"
$collections = Get-AzCosmosDBMongoDBCollection -ResourceGroupName $resourceGroupName -AccountName $accountName -DatabaseName $($database.Name)
If (-Not $collections) {
throw "Error: Found no collections to restore in the given database."
}
Write-Debug "Found $($collections.Length) collections under database $($database.Name)"
foreach ($collection in $collections) {
Write-Debug "Getting latest restorable timestamp for collection: $($collection.Name)"
$latestRestorableTimestampForCollection = Get-AzCosmosDBMongoDBCollectionBackupInformation -ResourceGroupName $resourceGroupName -AccountName $accountName -DatabaseName $database.Name -Name $collection.Name -Location $location
Write-Debug "Latest Restorable Timestamp for collection $($collection.Name): $($latestRestorableTimestampForCollection.LatestRestorableTimestamp)"
$latestRestorableTimestampForCollectionDateTime = [DateTime]$latestRestorableTimestampForCollection.LatestRestorableTimestamp
If ($latestRestorableTimestampForCollectionDateTime -lt $latestRestorableTimestampForAccount) {
Write-Debug "Latest Restorable Timestamp for collection $($collection.Name) is less than current database restorable timestamp: $latestRestorableTimestampForAccount"
$latestRestorableTimestampForAccount = $latestRestorableTimestampForCollectionDateTime
}
Write-Debug "Latest Restorable Timestamp for database so far: $latestRestorableTimestampForAccount"
}
}
if ($latestRestorableTimestampForAccount -eq [DateTime]::MaxValue) {
throw "Error: Failed to retrieve latest backup timestamp for account: $accountName"
}
Write-Debug "Latest Restorable Timestamp in UTC for account $($accountName): $latestRestorableTimestampForAccount"
return $latestRestorableTimestampForAccount
}
Söz dizimi:
Get-LatestRestorableTimestampForMongoDBAccount `
-ResourceGroupName <resourceGroupName> `
-AccountName <accountName> `
-Location <location>
Örnek istek:
Import-Module .\LatestRestorableTimestampForMongoDBAccount.ps1
Get-LatestRestorableTimestampForMongoDBAccount `
-ResourceGroupName rg `
-AccountName mongopitracc `
-Location eastus
Örnek yanıt (UTC biçiminde):
Latest restorable timestamp for an account is minimum of restorable timestamps of all the underlying collections
Wednesday, November 3, 2021 8:33:49 PM
Gremlin graph yedekleme bilgileri
PowerShell
Get-AzCosmosDBGremlinGraphBackupInformation `
-AccountName <System.String> `
-GremlinDatabaseName <System.String> `
[-DefaultProfile <Microsoft.Azure.Commands.Common.Authentication.Abstractions.Core.IAzureContextContainer>] `
-Location <System.String> `
-Name <System.String> `
-ResourceGroupName <System.String> [<CommonParameters>]
Örnek istek:
Get-AzCosmosDBGremlinGraphBackupInformation `
-ResourceGroupName "rg" `
-AccountName "amisigremlinpitracc1" `
-GremlinDatabaseName "db1" `
-Name "graph1" `
-Location "eastus"
Örnek yanıt (UTC biçiminde):
LatestRestorableTimestamp
-------------------------
3/1/2022 2:19:14 AM
CLI
az cosmosdb gremlin retrieve-latest-backup-time \
-g {resourcegroup} \
-a {accountname} \
-d {db_name} \
-c {graph_name} \
-l {location}
Örnek istek:
az cosmosdb gremlin retrieve-latest-backup-time \
-g "rg" \
-a "amisigremlinpitracc1" \
-d "db1" \
-c "graph1" \
-l "eastus"
Örnek yanıt:
{
"continuousBackupInformation": {
"latestRestorableTimestamp": "3/2/2022 5:31:13 AM"
}
}
Tablo yedekleme bilgileri
PowerShell
Get-AzCosmosDBTableBackupInformation `
-AccountName <System.String> `
[-DefaultProfile <Microsoft.Azure.Commands.Common.Authentication.Abstractions.Core.IAzureContextContainer>] `
-Location <System.String> `
-Name <System.String> `
-ResourceGroupName <System.String> [<CommonParameters>]
Örnek istek:
Get-AzCosmosDBTableBackupInformation `
-ResourceGroupName "rg" `
-AccountName "amisitablepitracc1" `
-Name "table1" `
-Location "eastus"
Örnek yanıt (UTC biçiminde):
LatestRestorableTimestamp
-------------------------
3/2/2022 2:19:15 AM
CLI
az cosmosdb table retrieve-latest-backup-time \
-g {resourcegroup} \
-a {accountname} \
-c {table_name} \
-l {location}
Örnek istek:
az cosmosdb table retrieve-latest-backup-time \
-g "rg" \
-a "amisitablepitracc1" \
-c "table1" \
-l "eastus"
Örnek yanıt:
{
"continuousBackupInformation": {
"latestRestorableTimestamp": "3/2/2022 5:33:47 AM"
}
}