-
Notifications
You must be signed in to change notification settings - Fork 5.1k
/
ManagedDatabaseRestoreDetails.json
313 lines (313 loc) · 14.2 KB
/
ManagedDatabaseRestoreDetails.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
{
"swagger": "2.0",
"info": {
"version": "2022-05-01-preview",
"title": "SqlManagementClient",
"description": "The Azure SQL Database management API provides a RESTful set of web APIs that interact with Azure SQL Database services to manage your databases. The API enables users to create, retrieve, update, and delete databases, servers, and other entities."
},
"host": "management.azure.com",
"schemes": [
"https"
],
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"paths": {
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/restoreDetails/{restoreDetailsName}": {
"get": {
"tags": [
"ManagedDatabaseRestoreDetails"
],
"description": "Gets managed database restore details.",
"operationId": "ManagedDatabaseRestoreDetails_Get",
"parameters": [
{
"$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter"
},
{
"$ref": "#/parameters/ManagedInstanceNameParameter"
},
{
"$ref": "#/parameters/DatabaseNameParameter"
},
{
"name": "restoreDetailsName",
"in": "path",
"description": "The name of the restore details to retrieve.",
"required": true,
"type": "string",
"enum": [
"Default"
],
"x-ms-enum": {
"name": "RestoreDetailsName",
"modelAsString": true
}
},
{
"$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter"
},
{
"$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter"
}
],
"responses": {
"200": {
"description": "Successfully retrieved restore details.",
"schema": {
"$ref": "#/definitions/ManagedDatabaseRestoreDetailsResult"
}
},
"default": {
"description": "*** Error Responses: ***\n\n * 400 RestoreDetailsNotAvailableOrExpired - Requested restore details are not available, or have expired.\n\n * 400 TargetServerDoesNotExist - The target server {0} does not exist or is not ready yet. Please check that it exists and retry the restore request.\n\n * 400 TargetServerRestoreNotAllowed - The target server {0} is currently not in a state that allows a restore to be started.\n\n * 400 BackupSetNotFound - No backups were found to restore the database. Please contact support to restore the database.\n\n * 400 FullBackupNotFound - Full backup can not be found.\n\n * 400 MissingThumbprint - Can not find server certificate.\n\n * 400 RestoreFromStripedBackupsNotEnabled - Restoring from striped backups is not supported.\n\n * 400 BackupSetBroken - Backup set is broken.\n\n * 400 BrokenRestorePlanNoFullBackup - The restore plan is broken because there is no full backup.\n\n * 400 SqlRestoreError - Non retriable error occurred while restoring backup with index {0} - {1} {2}\n\n * 400 BrokenRestorePlanWrongLogBackupLSN - The restore plan is broken because firstLsn of current log backup is not <= lastLsn of next log backup.\n\n * 400 BrokenRestorePlanWrongDiffBackupLSN - The restore plan is broken because firstLsn of diff backup is not >= firstLsn of full backup.\n\n * 400 BrokenRestorePlanGapInLogBackups - The restore plan is broken because firstLsn of current log backup is not equal to lastLsn of prev log backup.\n\n * 400 PartiallyContainedDatabaseUnsupported - \"Backup for a partially contained database is not supported.\"\n\n * 400 RequiredBackupIsNotLastRestored - Migration cannot be completed because provided backup file name is not the name of the last backup file that is restored.\n\n * 400 XtpInitializedDuringRestore - Memory-optimized filegroup must be empty in order to be restored on General Purpose tier of SQL Database Managed Instance.\n\n * 400 FullBackupMissingChecksum - Provided full backup is missing checksum.\n\n * 400 FullBackupDamaged - Provided full backup is damaged.\n\n * 400 MissingStripeInBackupSet - Provided backup set has one or more missing stripes.\n\n * 400 BrokenRestorePlanWrongDiffBaseGUID - The restore plan is broken because DifferentialBaseGuid of diff backup does not match BackupSetGuid of full backup.\n\n * 400 IncompatiblePhysicalLayoutTooFewDataFiles - Database backup contains incompatible physical layout. No data files are found in the backup.\n\n * 400 CorruptedPagesInBackupSet - Operation was aborted because RESTORE detected one or more corrupted pages in the backup set.\n\n * 400 IncompatiblePhysicalLayoutNonOnlineDataFilesExist - Database backup contains incompatible physical layout. Non-online data files exist.\n\n * 400 CorruptedPagesListMaintenance - Operation was aborted because an internal error occurred while processing the backup taken without checksum.\n\n * 400 IncompatiblePhysicalLayoutWrongNumberOfLogFiles - Database backup contains incompatible physical layout. Multiple log files are not supported.\n\n * 400 IncompatiblePhysicalLayoutNonOnlineLogFilesExist - Database backup contains incompatible physical layout. Non-online log files exist.\n\n * 400 IncompatiblePhysicalLayoutTooManyNonDataLogFiles - Database backup contains incompatible physical layout. Too many non-data/log files.\n\n * 400 ExternalBackupAlreadySignaledToComplete - The restore request has already been signaled to complete.\n\n * 400 ExternalBackupRestoreHasNotBeenStarted - The restore request can only be completed once the restore has started.\n\n * 400 ExternalBackupUpgradeInProgress - The restore request cannot be completed, since upgrade is in progress.\n\n * 400 IncompatiblePhysicalLayoutTooManyXTPFiles - Database backup contains incompatible physical layout. Multiple files found in the filegroup that contains MEMORY_OPTIMIZED_DATA.\n\n * 400 BlobStorageFailure - Blob storage failure has occurred.\n\n * 400 BackupsFromMultipleDatabasesDetectedInTheContainerFromTheStart - There are backups from multiple databases in the container. Please make sure the container has backups from a single database.{0}\n\n * 400 ManagedIdentityIssueDetectedFromTheStart - Managed identity is not set up properly. Please verify and try again.\n\n * 400 ManagedInstanceStorageLimitHit - The managed instance has reached its storage limit.\n\n * 400 AutoCompleteMissingLastBackupName - Auto complete restore request must have lastBackupName parameter provided.\n\n * 400 BlobStorageServerFailure - Blob storage server failure has occurred.\n\n * 400 BackupsFromMultipleDatabasesDetectedInTheContainerWhileRestoreInProgress - There are backups from multiple databases in the container. Please make sure the container has backups from a single database.{0}\n\n * 400 ManagedIdentityIssueDetectedWhileRestoreInProgress - Managed identity is not set up properly. Please verify and try again.\n\n * 400 ManagedDatabaseNotInRestoringState - Managed database is not in Restoring state."
}
},
"x-ms-examples": {
"Managed database restore details.": {
"$ref": "./examples/ManagedDatabaseRestoreDetails.json"
}
}
}
}
},
"definitions": {
"ManagedDatabaseRestoreDetailsBackupSetProperties": {
"description": "The managed database's restore details backup set properties.",
"type": "object",
"properties": {
"status": {
"description": "Backup set status.",
"type": "string",
"readOnly": true
},
"firstStripeName": {
"description": "First stripe name.",
"type": "string",
"readOnly": true
},
"numberOfStripes": {
"format": "int32",
"description": "Number of stripes.",
"type": "integer",
"readOnly": true
},
"backupSizeMB": {
"format": "int32",
"description": "Backup size.",
"type": "integer",
"readOnly": true
},
"restoreStartedTimestampUtc": {
"format": "date-time",
"description": "Last restored file time.",
"type": "string",
"readOnly": true
},
"restoreFinishedTimestampUtc": {
"format": "date-time",
"description": "Last restored file time.",
"type": "string",
"readOnly": true
}
}
},
"ManagedDatabaseRestoreDetailsProperties": {
"description": "The managed database's restore details properties.",
"type": "object",
"properties": {
"type": {
"description": "Restore type.",
"type": "string",
"readOnly": true
},
"status": {
"description": "Restore status.",
"type": "string",
"readOnly": true
},
"blockReason": {
"description": "The reason why restore is in Blocked state.",
"type": "string",
"readOnly": true
},
"lastUploadedFileName": {
"description": "Last uploaded file name.",
"type": "string",
"readOnly": true
},
"lastUploadedFileTime": {
"format": "date-time",
"description": "Last uploaded file time.",
"type": "string",
"readOnly": true
},
"lastRestoredFileName": {
"description": "Last restored file name.",
"type": "string",
"readOnly": true
},
"lastRestoredFileTime": {
"format": "date-time",
"description": "Last restored file time.",
"type": "string",
"readOnly": true
},
"percentCompleted": {
"format": "int32",
"description": "Percent completed.",
"type": "integer",
"readOnly": true
},
"currentRestoredSizeMB": {
"format": "int32",
"description": "Current restored size MB.",
"type": "integer",
"readOnly": true
},
"currentRestorePlanSizeMB": {
"format": "int32",
"description": "Current restore plan size MB.",
"type": "integer",
"readOnly": true
},
"currentBackupType": {
"description": "Current backup type.",
"type": "string",
"readOnly": true
},
"currentRestoringFileName": {
"description": "Current restoring file name.",
"type": "string",
"readOnly": true
},
"numberOfFilesDetected": {
"format": "int32",
"description": "Number of files detected.",
"type": "integer",
"readOnly": true
},
"numberOfFilesQueued": {
"format": "int32",
"description": "Number of files queued.",
"type": "integer",
"readOnly": true
},
"numberOfFilesSkipped": {
"format": "int32",
"description": "Number of files skipped.",
"type": "integer",
"readOnly": true
},
"numberOfFilesRestoring": {
"format": "int32",
"description": "Number of files restoring.",
"type": "integer",
"readOnly": true
},
"numberOfFilesRestored": {
"format": "int32",
"description": "Number of files restored.",
"type": "integer",
"readOnly": true
},
"numberOfFilesUnrestorable": {
"format": "int32",
"description": "Number of files unrestorable.",
"type": "integer",
"readOnly": true
},
"fullBackupSets": {
"description": "Full backup sets.",
"type": "array",
"items": {
"$ref": "#/definitions/ManagedDatabaseRestoreDetailsBackupSetProperties"
},
"readOnly": true
},
"diffBackupSets": {
"description": "Diff backup sets.",
"type": "array",
"items": {
"$ref": "#/definitions/ManagedDatabaseRestoreDetailsBackupSetProperties"
},
"readOnly": true
},
"logBackupSets": {
"description": "Log backup sets.",
"type": "array",
"items": {
"$ref": "#/definitions/ManagedDatabaseRestoreDetailsBackupSetProperties"
},
"readOnly": true
},
"unrestorableFiles": {
"description": "Unrestorable files.",
"type": "array",
"items": {
"$ref": "#/definitions/ManagedDatabaseRestoreDetailsUnrestorableFileProperties"
},
"readOnly": true
}
}
},
"ManagedDatabaseRestoreDetailsResult": {
"description": "A managed database restore details.",
"type": "object",
"allOf": [
{
"$ref": "../../../common/v1/types.json#/definitions/ProxyResource"
}
],
"properties": {
"properties": {
"$ref": "#/definitions/ManagedDatabaseRestoreDetailsProperties",
"description": "Resource properties.",
"x-ms-client-flatten": true
}
}
},
"ManagedDatabaseRestoreDetailsUnrestorableFileProperties": {
"description": "The managed database's restore details unrestorable file properties.",
"type": "object",
"properties": {
"name": {
"description": "File name.",
"type": "string",
"readOnly": true
}
}
}
},
"parameters": {
"DatabaseNameParameter": {
"name": "databaseName",
"in": "path",
"description": "The name of the database.",
"required": true,
"type": "string",
"x-ms-parameter-location": "method"
},
"ManagedInstanceNameParameter": {
"name": "managedInstanceName",
"in": "path",
"description": "The name of the managed instance.",
"required": true,
"type": "string",
"x-ms-parameter-location": "method"
}
},
"securityDefinitions": {
"azure_auth": {
"type": "oauth2",
"description": "Azure Active Directory OAuth2 Flow",
"flow": "implicit",
"authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
"scopes": {
"user_impersonation": "impersonate your user account"
}
}
}
}