- 적용 대상: ✅ NoSQL
적용 대상:
NoSQL
MongoDB
그렘린
테이블
Azure Cosmos DB 특정 시점 동일 계정 복원 기능을 사용하면 실수로 삭제된 컨테이너 또는 데이터베이스를 복구할 수 있습니다. 이 기능은 삭제된 데이터베이스 또는 컨테이너를 백업이 있는 지역의 동일한 기존 계정으로 복원합니다. 지속적인 백업 모드를 사용하면 최근 30일 이내의 아무 시점으로 복원할 수 있습니다.
필수 구성 요소
- Azure 구독 Azure 구독이 아직 없는 경우 시작하기 전에 Azure 체험 계정을 만듭니다.
- Azure Cosmos DB 계정. Azure Cosmos DB 계정에 다음 옵션 중 하나를 선택할 수 있습니다.
- 기존 Azure Cosmos DB 계정을 사용합니다.
- Azure 구독에서 새 Azure Cosmos DB 계정을 만듭니다.
삭제된 컨테이너 또는 데이터베이스 복원
Azure Portal, Azure CLI, Azure PowerShell 또는 Azure Resource Manager 템플릿을 사용하여 삭제된 컨테이너 또는 데이터베이스를 동일한 기존 계정에 복원합니다.
Azure Portal을 사용하여 삭제된 컨테이너 또는 데이터베이스를 복원합니다. 자식 컨테이너도 복원됩니다.
Azure Portal로 이동합니다.
Azure Cosmos DB 계정으로 이동한 다음, 특정 시점 복원 페이지로 이동합니다.
참고 항목
Azure Portal의 복원 창은
Microsoft.DocumentDB/locations/restorableDatabaseAccounts/*/read권한이 있는 경우에만 채워집니다. 이 권한에 대한 자세한 내용은 백업 및 복원 권한을 참조하세요.동일한 계정에 복원 탭을 선택합니다.
데이터베이스의 경우 검색 쿼리를 입력하여 컨테이너 또는 데이터베이스와 관련된 삭제 이벤트에 대한 이벤트 피드를 필터링합니다.
다음으로, 시작 및 종료 값을 지정하여 삭제 이벤트를 필터링하는 데 사용할 시간 창을 만듭니다.
참고 항목
시작 필터는 현재 날짜보다 최대 30일 전으로 제한됩니다.
새로 고침을 선택하여 다양한 리소스 종류의 이벤트 목록에 필터를 적용하여 업데이트합니다.
시간을 확인한 다음, 복원을 선택하여 이전에 삭제된 리소스 중 선택한 리소스의 복원을 시작합니다.
Important
동일한 계정에서 복원 작업을 3개까지 활성화할 수 없습니다. 복원 작업이 진행 중인 동안 원본 계정을 삭제하면 복원 작업이 실패할 수 있습니다.
참고 항목
이벤트 피드에 리소스가 복원할 수 없음으로 표시됩니다. 이 피드는 리소스를 복원할 수 없는 이유에 대한 자세한 정보를 제공합니다. 대부분의 경우 데이터베이스의 자식 컨테이너를 복원하려면 먼저 부모 데이터베이스를 복원해야 합니다.
복원 작업을 시작한 후 Azure Portal의 알림 영역을 사용하여 작업을 추적합니다. 알림은 복원 중인 리소스의 상태 정보를 제공합니다. 복원이 진행 중인 동안 컨테이너의 상태는 만드는 중입니다. 복원 작업이 완료되면 상태가 온라인으로 변경됩니다.
Azure CLI를 사용하여 삭제된 컨테이너 또는 데이터베이스를 복원합니다. 자식 컨테이너도 복원됩니다.
Important
계정 내 복원 명령에 액세스하려면 Azure CLI 버전 2.58.0 이상이 필요합니다.
다음을 사용하여
az cosmosdb restorable-database-account list모든 라이브 및 삭제된 복원 가능한 데이터베이스 계정 목록을 검색합니다.az cosmosdb restorable-database-account list \ --account-name <name-of-account>[ { "accountName": "deleted-account-1", "apiType": "Sql", "creationTime": "2020-08-02T22:23:00.095870+00:00", "deletionTime": "2020-08-02T22:26:13.483175+00:00", "id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.DocumentDB/locations/westus/restorableDatabaseAccounts/abcd1234-d1c0-4645-a699-abcd1234", "location": "West US", "name": "abcd1234-d1c0-4645-a699-abcd1234", "restorableLocations": [ { "locationName": "West US" }, { "locationName": "East US" } ] } ]라이브 계정에 대해 복원 가능한 모든 버전의 데이터베이스를 나열하는 데 사용합니다
az cosmosdb sql restorable-database list.az cosmosdb sql restorable-database list \ --instance-id <instance-id-of-account> \ --location <location>참고 항목
모든 복원 가능 데이터베이스 삭제 이벤트를 나열하면 데이터베이스가 실제로 있었던 시간을 알 수 없는 시나리오에서 올바른 데이터베이스를 선택할 수 있습니다. 이벤트 피드의 응답에 Delete 작업 유형이 포함되어 있으면 삭제된 데이터베이스이며, 동일한 계정 내에 복원할 수 있습니다. 복원 타임스탬프는 삭제 타임스탬프 이전과 보존 기간 이내의 아무 타임스탬프로 설정할 수 있습니다.
특정 데이터베이스 내에서 복원 가능한 컨테이너의 모든 버전을 나열하는 데 사용합니다
az cosmosdb sql restorable-container list.az cosmosdb sql restorable-container list \ --instance-id <instance-id-of-account> \ --database-rid <owner-resource-id-of-database> \ --location <location>참고 항목
모든 복원 가능 데이터베이스 삭제 이벤트를 나열하면 데이터베이스가 실제로 있었던 시간을 알 수 없는 시나리오에서 올바른 컨테이너를 선택할 수 있습니다. 이벤트 피드의 응답에 Delete 작업 유형이 포함되어 있으면 삭제된 컨테이너이며, 동일한 계정 내에 복원할 수 있습니다. 복원 타임스탬프는 삭제 타임스탬프 이전과 보존 기간 이내의 아무 타임스탬프로 설정할 수 있습니다.
를 사용하여
az cosmosdb sql database restore삭제된 데이터베이스에 대한 복원 작업을 시작합니다. 복원 타임스탬프는 선택 사항입니다. 제공되지 않으면 마지막으로 삭제된 데이터베이스 인스턴스가 복원됩니다.az cosmosdb sql database restore \ --resource-group <resource-group-name> \ --account-name <account-name> \ --name <database-name> \ --restore-timestamp <timestamp> \ --disable-ttl True를 사용하여
az cosmosdb sql container restore삭제된 컨테이너에 대한 복원 작업을 시작합니다. 복원 타임스탬프는 선택 사항입니다. 제공되지 않으면 마지막으로 삭제된 컨테이너 인스턴스가 복원됩니다.az cosmosdb sql container restore \ --resource-group <resource-group-name> \ --account-name <account-name> \ --database-name <database-name> \ --name <container-name> \ --restore-timestamp <timestamp> \ --disable-ttl True
다음을 사용하여
az cosmosdb restorable-database-account list모든 라이브 및 삭제된 복원 가능한 데이터베이스 계정 목록을 검색합니다.az cosmosdb restorable-database-account list \ --account-name <name-of-account>[ { "accountName": "deleted-account-1", "apiType": "Sql", "creationTime": "2020-08-02T22:23:00.095870+00:00", "deletionTime": "2020-08-02T22:26:13.483175+00:00", "id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.DocumentDB/locations/westus/restorableDatabaseAccounts/abcd1234-d1c0-4645-a699-abcd1234", "location": "West US", "name": "abcd1234-d1c0-4645-a699-abcd1234", "restorableLocations": [ { "locationName": "West US" }, { "locationName": "East US" } ] } ]라이브 계정에 대해 복원 가능한 모든 버전의 데이터베이스를 나열하는 데 사용합니다
az cosmosdb mongodb restorable-database list.az cosmosdb mongodb restorable-database list \ --instance-id <instance-id-of-account> \ --location <location>특정 데이터베이스 내에서 복원 가능한 컬렉션의 모든 버전을 나열하는 데 사용합니다
az cosmosdb mongodb restorable-collection list.az cosmosdb mongodb restorable-collection list \ --instance-id <instance-id-of-account> \ --database-rid <owner-resource-id-of-database> \ --location <location>를 사용하여
az cosmosdb mongodb database restore삭제된 데이터베이스에 대한 복원 작업을 시작합니다. 복원 타임스탬프는 선택 사항입니다. 제공되지 않은 경우 마지막으로 삭제된 데이터베이스 인스턴스가 복원됩니다.az cosmosdb mongodb database restore \ --resource-group <resource-group-name> \ --account-name <account-name> \ --name <database-name> \ --restore-timestamp <timestamp> --disable-ttl True삭제된 컬렉션에
az cosmosdb mongodb collection restore대한 복원 작업을 시작합니다. 마지막으로 삭제된 컬렉션 인스턴스가 복원되지 않은 경우 복원 타임스탬프는 선택 사항입니다.az cosmosdb mongodb collection restore \ --resource-group <resource-group-name> \ --account-name <account-name> \ --database-name <database-name> \ --name <container-name> \ --restore-timestamp <timestamp> \ --disable-ttl True
다음을 사용하여
az cosmosdb restorable-database-account list모든 라이브 및 삭제된 복원 가능한 데이터베이스 계정 목록을 검색합니다.az cosmosdb restorable-database-account list \ --account-name <name-of-account>[ { "accountName": "deleted-account-1", "apiType": "Sql", "creationTime": "2020-08-02T22:23:00.095870+00:00", "deletionTime": "2020-08-02T22:26:13.483175+00:00", "id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.DocumentDB/locations/westus/restorableDatabaseAccounts/abcd1234-d1c0-4645-a699-abcd1234", "location": "West US", "name": "abcd1234-d1c0-4645-a699-abcd1234", "restorableLocations": [ { "locationName": "West US" }, { "locationName": "East US" } ] } ]라이브 계정에 대해 복원 가능한 모든 버전의 데이터베이스를 나열하는 데 사용합니다
az cosmosdb gremlin restorable-database list.az cosmosdb gremlin restorable-database list \ --instance-id <instance-id-of-account> \ --location <location>특정 데이터베이스 내에서 복원 가능한 그래프의 모든 버전을 나열하는 데 사용합니다
az cosmosdb gremlin restorable-graph list.az cosmosdb gremlin restorable-graph list \ --instance-id <instance-id-of-account> \ --database-rid <owner-resource-id-of-database> \ --location <location>를 사용하여
az cosmosdb gremlin database restore삭제된 데이터베이스에 대한 복원 작업을 시작합니다. 복원 타임스탬프는 선택 사항입니다. 제공되지 않으면 마지막으로 삭제된 데이터베이스 인스턴스가 복원됩니다.az cosmosdb gremlin database restore \ --resource-group <resource-group-name> \ --account-name <account-name> \ --name <database-name> \ --restore-timestamp <timestamp> \ --disable-ttl True를 사용하여
az cosmosdb gremlin graph restore삭제된 그래프에 대한 복원 작업을 시작합니다. 복원 타임스탬프는 선택 사항입니다. 제공되지 않으면 마지막으로 삭제된 그래프 인스턴스가 복원됩니다.az cosmosdb gremlin graph restore \ --resource-group <resource-group-name> \ --account-name <account-name> \ --database-name <database-name> \ --name <graph-name> \ --restore-timestamp <timestamp> \ --disable-ttl True
다음을 사용하여
az cosmosdb restorable-database-account list모든 라이브 및 삭제된 복원 가능한 데이터베이스 계정 목록을 검색합니다.az cosmosdb restorable-database-account list \ --account-name <name-of-account>[ { "accountName": "deleted-account-1", "apiType": "Sql", "creationTime": "2020-08-02T22:23:00.095870+00:00", "deletionTime": "2020-08-02T22:26:13.483175+00:00", "id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.DocumentDB/locations/westus/restorableDatabaseAccounts/abcd1234-d1c0-4645-a699-abcd1234", "location": "West US", "name": "abcd1234-d1c0-4645-a699-abcd1234", "restorableLocations": [ { "locationName": "West US" }, { "locationName": "East US" } ] } ]라이브 계정에 대해 복원 가능한 테이블의 모든 버전을 나열하는 데 사용합니다
az cosmosdb table restorable-table list.az cosmosdb table restorable-table list \ --instance-id <instance-id-of-account> \ --location <location>를 사용하여
az cosmosdb table restore삭제된 테이블에 대한 복원 작업을 시작합니다. 복원 타임스탬프는 선택 사항입니다. 제공되지 않으면 마지막으로 삭제된 테이블 인스턴스가 복원됩니다.az cosmosdb table restore \ --resource-group <resource-group-name> \ --account-name <account-name> \ --table-name <table-name> \ --restore-timestamp <timestamp> \ --disable-ttl True
Azure PowerShell을 사용하여 삭제된 컨테이너 또는 데이터베이스를 복원합니다. 자식 컨테이너와 데이터베이스도 복원됩니다.
Important
in-account restore cmdlet에 액세스하려면 Azure PowerShell 버전 1.14.1 이상용 Az.Cosmos DB 모듈이 필요합니다.
[
Get-AzCosmosDBRestorableDatabaseAccount](/powershell/module/az.cosmosdb/get-azCosmos DBrestorabledatabaseaccount) cmdlet을 사용하여 모든 라이브 및 삭제된 복원 가능한 데이터베이스 계정 목록을 검색합니다.Get-AzCosmosDBRestorableDatabaseAccountId : /subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/westus/restorableDatabaseAccounts/abcd1234-d1c0-4645-a699-abcd1234 DatabaseAccountInstanceId : abcd1234-d1c0-4645-a699-abcd1234 Location : West US DatabaseAccountName : deleted-account-1 CreationTime : 8/2/2020 10:23:00 PM DeletionTime : 8/2/2020 10:26:13 PM ApiType : Sql RestorableLocations : {West US, East US}참고 항목
계정에
CreationTime또는DeletionTime필드가 있습니다. 이러한 필드는 지역에서도 존재합니다. 이러한 시간을 통해 리소스를 복원할 때 사용할 올바른 지역과 유효한 시간 범위를 선택할 수 있습니다.cmdlet을
Get-AzCosmosDBSqlRestorableDatabase사용하여 라이브 계정에 대해 복원 가능한 모든 버전의 데이터베이스를 나열합니다.$parameters = @{ DatabaseAccountInstanceId = "<instance-id-of-account>" Location = "<location>" } Get-AzCosmosDBSqlRestorableDatabase @parameters참고 항목
모든 복원 가능 데이터베이스 삭제 이벤트를 나열하면 데이터베이스가 실제로 있었던 시간을 알 수 없는 시나리오에서 올바른 데이터베이스를 선택할 수 있습니다. 이벤트 피드의 응답에 Delete 작업 유형이 포함되어 있으면 삭제된 데이터베이스이며, 동일한 계정 내에 복원할 수 있습니다. 복원 타임스탬프는 삭제 타임스탬프 이전과 보존 기간 이내의 아무 타임스탬프로 설정할 수 있습니다.
cmdlet을
Get-AzCosmosDBSqlRestorableContainer사용하여 특정 데이터베이스 내에서 복원 가능한 컨테이너의 모든 버전을 나열합니다.$parameters = @{ DatabaseAccountInstanceId = "<instance-id-of-account>" DatabaseRId = "<owner-resource-id-of-database>" Location = "<location>" } Get-AzCosmosDBSqlRestorableContainer @parameters참고 항목
복원 가능한 모든 데이터베이스 삭제 이벤트를 나열하면 실제 존재 시간을 알 수 없는 시나리오에서 올바른 컨테이너를 선택할 수 있습니다. 이벤트 피드의 응답에 Delete 작업 유형이 포함되어 있으면 삭제된 컨테이너이며, 동일한 계정 내에 복원할 수 있습니다. 복원 타임스탬프는 삭제 타임스탬프 이전과 보존 기간 이내의 아무 타임스탬프로 설정할 수 있습니다.
Restore-AzCosmos DBSqlDatabase cmdlet을 사용하여 삭제된 데이터베이스에 대한 복원 작업을 시작합니다. 복원 타임스탬프는 선택 사항입니다. 이 타임스탬프가 없으므로 컨테이너의 마지막으로 삭제된 인스턴스가 복원됩니다.
$parameters = @{ ResourceGroupName = "<resource-group-name>" AccountName = "<account-name>" Name = "<database-name>" RestoreTimestampInUtc = "<timestamp>" } Restore-AzCosmos DBSqlDatabase @parametersRestore-AzCosmos DBSqlContainer cmdlet을 사용하여 삭제된 컨테이너에 대한 복원 작업을 시작합니다. 복원 타임스탬프는 선택 사항입니다. 이 타임스탬프가 없으므로 컨테이너의 마지막으로 삭제된 인스턴스가 복원됩니다.
$parameters = @{ ResourceGroupName = "<resource-group-name>" AccountName = "<account-name>" DatabaseName = "<database-name>" Name = "<container-name>" RestoreTimestampInUtc = "<timestamp>" DisableTtl= $true } Restore-AzCosmos DBSqlContainer @parameters
cmdlet을 사용하여
Get-AzCosmosDBRestorableDatabaseAccount모든 라이브 및 삭제된 복원 가능한 데이터베이스 계정 목록을 검색합니다.Get-AzCosmosDBRestorableDatabaseAccountId : /subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/westus/restorableDatabaseAccounts/abcd1234-d1c0-4645-a699-abcd1234 DatabaseAccountInstanceId : abcd1234-d1c0-4645-a699-abcd1234 Location : West US DatabaseAccountName : deleted-account-1 CreationTime : 8/2/2020 10:23:00 PM DeletionTime : 8/2/2020 10:26:13 PM ApiType : Sql RestorableLocations : {West US, East US}참고 항목
계정에
CreationTime또는DeletionTime필드가 있습니다. 이러한 필드는 지역에서도 존재합니다. 이러한 시간을 통해 리소스를 복원할 때 사용할 올바른 지역과 유효한 시간 범위를 선택할 수 있습니다.라이브 계정에 대해 복원 가능한 모든 버전의 데이터베이스를 나열하는 데 사용합니다
Get-AzCosmosDBMongoDBRestorableDatabase.$parameters = @{ DatabaseAccountInstanceId = "<instance-id-of-account>" Location = "<location>" } Get-AzCosmosDBMongoDBRestorableDatabase @parameterscmdlet을
Get-AzCosmosDBMongoDBRestorableCollection사용하여 특정 데이터베이스 내에서 복원 가능한 컬렉션의 모든 버전을 나열합니다. 복원 타임스탬프는 선택 사항입니다. 이 타임스탬프가 없으므로 컨테이너의 마지막으로 삭제된 인스턴스가 복원됩니다.$parameters = @{ DatabaseAccountInstanceId = "<instance-id-of-account>" DatabaseRId = "<owner-resource-id-of-database>" Location = "<location>" } Get-AzCosmosDBMongoDBRestorableCollection @parametersRestore-AzCosmos DBMongoDBDatabase cmdlet을 사용하여 삭제된 데이터베이스에 대한 복원 작업을 시작합니다.
$parameters = @{ ResourceGroupName = "<resource-group-name>" AccountName = "<account-name>" Name = "<database-name>" RestoreTimestampInUtc = "<timestamp>" DisableTtl=$true } Restore-AzCosmos DBMongoDBDatabase @parametersRestore-AzCosmos DBMongoDBCollection cmdlet을 사용하여 삭제된 컬렉션에 대한 복원 작업을 시작합니다. 복원 타임스탬프는 선택 사항입니다. 제공되지 않으면 마지막으로 삭제된 컬렉션 인스턴스가 복원됩니다.
$parameters = @{ ResourceGroupName = "<resource-group-name>" AccountName = "<account-name>" DatabaseName = "<database-name>" Name = "<collection-name>" RestoreTimestampInUtc = "<timestamp>" DisableTtl=$true } Restore-AzCosmos DBMongoDBCollection @parameters
cmdlet을 사용하여
Get-AzCosmosDBRestorableDatabaseAccount모든 라이브 및 삭제된 복원 가능한 데이터베이스 계정 목록을 검색합니다.Get-AzCosmosDBRestorableDatabaseAccountId : /subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/westus/restorableDatabaseAccounts/abcd1234-d1c0-4645-a699-abcd1234 DatabaseAccountInstanceId : abcd1234-d1c0-4645-a699-abcd1234 Location : West US DatabaseAccountName : deleted-account-1 CreationTime : 8/2/2020 10:23:00 PM DeletionTime : 8/2/2020 10:26:13 PM ApiType : Sql RestorableLocations : {West US, East US}참고 항목
계정에
CreationTime또는DeletionTime필드가 있습니다. 이러한 필드는 지역에서도 존재합니다. 이러한 시간을 통해 리소스를 복원할 때 사용할 올바른 지역과 유효한 시간 범위를 선택할 수 있습니다.cmdlet을
Get-AzCosmosDBGremlinRestorableDatabase사용하여 라이브 계정에 대해 복원 가능한 모든 버전의 데이터베이스를 나열합니다.$parameters = @{ DatabaseAccountInstanceId = "<instance-id-of-account>" Location = "<location>" } Get-AzCosmosDBGremlinRestorableDatabase @parameterscmdlet을
Get-AzCosmosDBGremlinRestorableGraph사용하여 특정 데이터베이스에 있는 복원 가능한 그래프의 모든 버전을 나열합니다.$parameters = @{ DatabaseAccountInstanceId = "<instance-id-of-account>" DatabaseRId = "<owner-resource-id-of-database>" Location = "<location>" } Get-AzCosmosDBGremlinRestorableGraph @parameterscmdlet을 사용하여
Restore-AzCosmos DBGremlinDatabase삭제된 데이터베이스에 대한 복원 작업을 시작합니다. 복원 타임스탬프는 선택 사항입니다. 타임스탬프가 제공되지 않으면 데이터베이스의 마지막으로 삭제된 인스턴스가 복원됩니다.$parameters = @{ ResourceGroupName = "<resource-group-name>" AccountName = "<account-name>" Name = "<database-name>" RestoreTimestampInUtc = "<timestamp>" DisableTtl=$true } Restore-AzCosmos DBGremlinDatabase @parameterscmdlet을 사용하여
Restore-AzCosmos DBGremlinGraph삭제된 그래프에 대한 복원 작업을 시작합니다. 복원 타임스탬프는 선택 사항입니다. 타임스탬프가 제공되지 않으면 데이터베이스의 마지막으로 삭제된 인스턴스가 복원됩니다.$parameters = @{ ResourceGroupName = "<resource-group-name>" AccountName = "<account-name>" DatabaseName = "<database-name>" Name = "<graph-name>" RestoreTimestampInUtc = "<timestamp>" DisableTtl=$true } Restore-AzCosmos DBGremlinGraph @parameters
[
Get-AzCosmosDBRestorableDatabaseAccount](/powershell/module/az.cosmosdb/get-azCosmos DBrestorabledatabaseaccount) cmdlet을 사용하여 모든 라이브 및 삭제된 복원 가능한 데이터베이스 계정 목록을 검색합니다.Get-AzCosmosDBRestorableDatabaseAccountId : /subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/westus/restorableDatabaseAccounts/abcd1234-d1c0-4645-a699-abcd1234 DatabaseAccountInstanceId : abcd1234-d1c0-4645-a699-abcd1234 Location : West US DatabaseAccountName : deleted-account-1 CreationTime : 8/2/2020 10:23:00 PM DeletionTime : 8/2/2020 10:26:13 PM ApiType : Sql RestorableLocations : {West US, East US}참고 항목
계정에
CreationTime또는DeletionTime필드가 있습니다. 이러한 필드는 지역에서도 존재합니다. 이러한 시간을 통해 리소스를 복원할 때 사용할 올바른 지역과 유효한 시간 범위를 선택할 수 있습니다.[
Get-AzCosmosDBTableRestorableTable](/powershell/module/az.cosmosdb/get-azCosmos DBtablerestorabletable) cmdlet을 사용하여 라이브 계정의 복원 가능한 모든 테이블 버전을 나열합니다.$parameters = @{ DatabaseAccountInstanceId = "<instance-id-of-account>" Location = "<location>" } Get-AzCosmosDBTableRestorableTable @parameterscmdlet을 사용하여
Restore-AzCosmos DBTable삭제된 테이블에 대한 복원 작업을 시작합니다. 복원 타임스탬프는 선택 사항입니다. 타임스탬프가 제공되지 않으면 데이터베이스의 마지막으로 삭제된 인스턴스가 복원됩니다.$parameters = @{ ResourceGroupName = "<resource-group-name>" AccountName = "<account-name>" Name = "<table-name>" RestoreTimestampInUtc = "<timestamp>" DisableTtl=$true } Restore-AzCosmos DBTable @parameters
Azure Resource Manager 템플릿을 사용하여 삭제된 컨테이너와 데이터베이스를 복원할 수 있습니다.
템플릿에서 Azure Cosmos DB 리소스를 만들거나 찾습니다. 다음은 리소스의 일반적인 예입니다.
{ "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "resources": [ { "name": "msdocs-example-arm", "type": "Microsoft.DocumentDB/databaseAccounts", "apiVersion": "2022-02-15-preview", "location": "West US", "properties": { "locations": [ { "locationName": "West US" } ], "backupPolicy": { "type": "Continuous" }, "databaseAccountOfferType": "Standard" } } ] }템플릿의 Azure Cosmos DB 리소스를 업데이트하려면 다음을 수행합니다.
-
properties.createMode를restore로 설정합니다. -
properties.restoreParameters개체를 정의합니다. -
properties.restoreParameters.restoreTimestampInUtc를 UTC 타임스탬프로 설정합니다. -
properties.restoreParameters.restoreSource를 복원 작업의 원본인 계정의 인스턴스 식별자로 설정합니다.
{ "properties": { "name": "<name-of-database-or-container>", "restoreParameters": { "restoreSource": "<source-account-instance-id>", "restoreTimestampInUtc": "<timestamp>", "restoreWithTtlDisabled": "true" }, "createMode": "Restore" } }-
SQL 컨테이너를 복원하려면 다음 템플릿을 다음과 같이 업데이트합니다.
- resources.name을
<accountname>/databasename>/<containername>으로 설정합니다. - 복원하려면 resources.properties.resource.createMode를 설정합니다.
- resources.properties.resource.restoreParameters.id 컨테이너 이름을 설정합니다.
- resources.properties.resource.restoreParameters.restoreTimestampInUtc를 UTC 타임스탬프로 설정합니다.
- resources.properties.resource.restoreParameters.restoreSource를 복원 작업의 원본인 계정의 인스턴스 식별자로 설정합니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources":[{
"type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers",
"apiVersion": "2023-11-15",
"name": "<accountname>/<databasename>/<containername>",
"properties": {
"resource": {
"id": "<containername>",
"restoreParameters": {
"restoreSource": "/subscriptions/<subscriptionid>/providers/Microsoft.DocumentDB/locations/<lowercaselocationwithoutspace>/restorableDatabaseAccounts/<databaseaccountinstanceId>",
"restoreTimestampInUtc": "<restore timestamp is utc iso format>"
},
"createMode": "Restore"
}
}
}
]
}
SQL 데이터베이스를 복원하려면 다음 템플릿을 다음과 같이 업데이트합니다.
- resources.name을
<accountname>/databasename>으로 설정합니다. - 복원하려면 resources.properties.resource.createMode를 설정합니다.
- resources.properties.resource.restoreParameters.id 데이터베이스 이름을 설정합니다.
- resources.properties.resource.restoreParameters.restoreTimestampInUtc를 UTC 타임스탬프로 설정합니다.
- resources.properties.resource.restoreParameters.restoreSource를 복원 작업의 원본인 계정의 인스턴스 식별자로 설정합니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases",
"apiVersion": "2023-11-15",
"name": "<account name>/<database name>",
"properties": {
"resource": {
"id": "<database name>",
"restoreParameters": {
"restoreSource": "/subscriptions/<subscriptionId>/providers/Microsoft.DocumentDB/locations/<location>/restorableDatabaseAccounts/<databaseaccountinstanceid>",
"restoreTimestampInUtc": "restore timestamp"
},
"createMode": "Restore"
}
}
}
]
}
{
"properties": {
"name": "<name-of-database-or-collection>",
"restoreParameters": {
"restoreSource": "<source-account-instance-id>",
"restoreTimestampInUtc": "<timestamp>",
"restoreWithTtlDisabled": "true"
},
"createMode": "Restore"
}
}
Mongo 컬렉션을 복원하려면 다음 템플릿을 다음과 같이 업데이트합니다.
- resources.name을
<accountname>/databasename>/<collectionname>으로 설정합니다. - 복원하려면 resources.properties.resource.createMode를 설정합니다.
- resources.properties.resource.restoreParameters.id 컬렉션 이름을 설정합니다.
- resources.properties.resource.restoreParameters.restoreTimestampInUtc를 UTC 타임스탬프로 설정합니다.
- resources.properties.resource.restoreParameters.restoreSource를 복원 작업의 원본인 계정의 인스턴스 식별자로 설정합니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.DocumentDB/databaseAccounts/ mongoDBDatabases/collections",
"apiVersion": "2023-11-15",
"name": "<accountname>/<databasename>/<collectionname>",
"properties": {
"resource": {
"id": "<collectionname>",
"restoreParameters": {
"restoreSource": "/subscriptions/<subscriptionid>/providers/Microsoft.DocumentDB/locations/<lowercaselocationwithoutspace>/restorableDatabaseAccounts/<databaseaccountinstanceId>",
"restoreTimestampInUtc": "<restore timestamp is utc iso format>"
},
"createMode": "Restore"
}
}
}
]
}
Mongo 데이터베이스를 복원하려면 다음 템플릿을 다음과 같이 업데이트합니다.
- resources.name을
<accountname>/databasename>으로 설정합니다. - 복원하려면 resources.properties.resource.createMode를 설정합니다.
- resources.properties.resource.restoreParameters.id 데이터베이스 이름을 설정합니다.
- resources.properties.resource.restoreParameters.restoreTimestampInUtc를 UTC 타임스탬프로 설정합니다.
- resources.properties.resource.restoreParameters.restoreSource를 복원 작업의 원본인 계정의 인스턴스 식별자로 설정합니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.DocumentDB/databaseAccounts/mongoDBDatabases",
"apiVersion": "2023-11-15",
"name": "<account name>/<database name>",
"properties": {
"resource": {
"id": "<database name>",
"restoreParameters": {
"restoreSource": "/subscriptions/<subscriptionId>/providers/Microsoft.DocumentDB/locations/<location>/restorableDatabaseAccounts/<databaseaccountinstanceid>",
"restoreTimestampInUtc": "restore timestamp"
},
"createMode": "Restore"
}
}
}
]
}
{
"properties": {
"name": "<name-of-database-or-graph>",
"restoreParameters": {
"restoreSource": "<source-account-instance-id>",
"restoreTimestampInUtc": "<timestamp>",
"restoreWithTtlDisabled": "true"
},
"createMode": "Restore"
}
}
Gremlin 그래프를 복원하려면 다음 템플릿을 다음과 같이 업데이트합니다.
- resources.name을
<accountname>/databasename>/<graphname>으로 설정합니다. - 복원하려면 resources.properties.resource.createMode를 설정합니다.
- resources.properties.resource.restoreParameters.id 그래프 이름을 설정합니다.
- resources.properties.resource.restoreParameters.restoreTimestampInUtc를 UTC 타임스탬프로 설정합니다.
- resources.properties.resource.restoreParameters.restoreSource를 복원 작업의 원본인 계정의 인스턴스 식별자로 설정합니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/graphs",
"apiVersion": "2023-11-15",
"name": "<accountname>/<databasename>/<graphname>",
"properties": {
"resource": {
"id": "<graphname>",
"restoreParameters": {
"restoreSource": "/subscriptions/<subscriptionid>/providers/Microsoft.DocumentDB/locations/<lowercaselocationwithoutspace>/restorableDatabaseAccounts/<databaseaccountinstanceId>",
"restoreTimestampInUtc": "<restore timestamp is utc iso format>"
},
"createMode": "Restore"
}
}
}
]
}
Gremlin 데이터베이스를 복원하려면 다음 템플릿을 다음과 같이 업데이트합니다.
- resources.name을
<accountname>/databasename>으로 설정합니다. - 복원하려면 resources.properties.resource.createMode를 설정합니다.
- resources.properties.resource.restoreParameters.id 데이터베이스 이름을 설정합니다.
- resources.properties.resource.restoreParameters.restoreTimestampInUtc를 UTC 타임스탬프로 설정합니다.
- resources.properties.resource.restoreParameters.restoreSource를 복원 작업의 원본인 계정의 인스턴스 식별자로 설정합니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases",
"apiVersion": "2023-11-15",
"name": "<account name>/<database name>",
"properties": {
"resource": {
"id": "<database name>",
"restoreParameters": {
"restoreSource": "/subscriptions/<subscriptionId>/providers/Microsoft.DocumentDB/locations/<location>/restorableDatabaseAccounts/<databaseaccountinstanceid>",
"restoreTimestampInUtc": "restore timestamp"
},
"createMode": "Restore"
}
}
}
]
}
{
"properties": {
"name": "<name-of-table>",
"restoreParameters": {
"restoreSource": "<source-account-instance-id>",
"restoreTimestampInUtc": "<timestamp>",
"restoreWithTtlDisabled": "true"
},
"createMode": "Restore"
}
}
테이블을 복원하려면 다음 템플릿을 다음과 같이 업데이트합니다.
- resources.name을
<accountname>/tablename>으로 설정합니다. - 복원하려면 resources.properties.resource.createMode를 설정합니다.
- resources.properties.resource.restoreParameters.id 테이블 이름을 설정합니다.
- resources.properties.resource.restoreParameters.restoreTimestampInUtc를 UTC 타임스탬프로 설정합니다.
- resources.properties.resource.restoreParameters.restoreSource를 복원 작업의 원본인 계정의 인스턴스 식별자로 설정합니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.DocumentDB/databaseAccounts/tables",
"apiVersion": "2023-11-15",
"name": "<account name>/<table name>",
"properties": {
"resource": {
"id": "<table name>",
"restoreParameters": {
"restoreSource": "/subscriptions/<subscriptionId>/providers/Microsoft.DocumentDB/locations/<location>/restorableDatabaseAccounts/<databaseaccountinstanceid>",
"restoreTimestampInUtc": "restore timestamp"
},
"createMode": "Restore"
}
}
}
]
}
참고 항목
모든 라이브 및 삭제된 복원 가능한 데이터베이스 계정에 대한 인스턴스 식별자 목록을 검색하는 데 사용합니다 az cosmosdb restorable-database-account list .
다음을 사용하여
az deployment group create템플릿을 배포합니다.az deployment group create \ --resource-group <resource-group-name> \ --template-file <template-filename>
복원 작업의 상태 추적
삭제된 컨테이너 또는 데이터베이스의 특정 시점 복원 작업이 시작되면 해당 작업은 리소스에 대한 InAccount 복원 작업으로 식별됩니다.
특정 리소스의 복원 작업 목록을 가져오려면 InAccount Restore Deleted 검색 필터와 시간 필터를 사용하여 계정의 활동 로그를 필터링합니다. 반환되는 목록에는 복원 작업을 시작한 사용자를 식별하는 UserPrincipalName 필드가 포함됩니다. 활동 로그에 액세스하는 방법에 대한 자세한 내용은 특정 시점 복원 작업 감사를 참조하세요.
현재는 계정의 활동 로그를 얻으려면 Azure Portal을 사용해야 합니다. InAccount Restore Deleted 검색 필터와 시간 필터를 사용합니다.
현재는 계정의 활동 로그를 얻으려면 Azure Portal을 사용해야 합니다. InAccount Restore Deleted 검색 필터와 시간 필터를 사용합니다.
현재는 계정의 활동 로그를 얻으려면 Azure Portal을 사용해야 합니다. InAccount Restore Deleted 검색 필터와 시간 필터를 사용합니다.
관련 콘텐츠
- Azure Portal, PowerShell, Azure CLI 또는 Azure Resource Manager를 사용하여 지속적인 백업을 사용하도록 설정합니다.
- 정기적 백업에서 지속적인 백업으로 계정을 마이그레이션하는 방법을 알아봅니다.
- 지속적인 백업 모드 리소스 모델을 검토합니다.
- 지속적인 백업 모드를 사용하여 데이터를 복원하는 데 필요한 권한을 관리합니다.
피드백
이 페이지가 도움이 되었나요?
No
이 항목에 대한 도움이 필요하세요?
Ask Learn을 사용하여 이 주제를 명확히 설명하거나 안내하고 싶으신가요?
추가 리소스
-
Last updated on
2025-09-03