該作在 Create Database 資料庫帳戶中創建一個新資料庫。
備註
這些 API 參考文章介紹如何使用 Azure Cosmos DB 數據平面 API 建立資源。 使用數據平面 API,可以配置基本選項,例如索引策略、分區鍵,就像使用 Cosmos DB 軟體開發工具包 (SDK) 一樣。 如果需要對所有 Azure Cosmos DB 資源提供完整的功能支援,建議使用 Cosmos DB 資源提供程式。
請求
| 方法 | 請求網址識別碼 (URI) | 說明 |
|---|---|---|
| 郵件 | https://{databaseaccount}.documents.azure.com/dbs |
{databaseaccount} 是在訂閱下創建的 Azure Cosmos DB 帳戶的名稱。 |
標題
有關所有 Azure Cosmos DB 請求使用的標頭,請參閱 常見的 Azure Cosmos DB REST 請求標頭 。
| 房產 | 為必填項目 | 類型 | 說明 |
|---|---|---|---|
| x-ms-offer-throughput | 可選 | 數目 | 用戶為資料庫指定的手動輸送量 (RU/s) 以每秒 100 個請求單位表示。 最小值為 400 到 1,000,000(或通過請求提高限制而更高)。 必須只指定 或 x-ms-cosmos-offer-autopilot-settings 中的x-ms-offer-throughput一個。 這些標頭不能一起指定。 |
| x-ms-cosmos-offer-autopilot-settings | 可選 | JSON | 使用者指定了資料庫的自動縮放最大 RU/秒。 該值是具有屬性 maxThroughput. 例如: {"maxThroughput": 4000} 。必須只指定 或 x-ms-cosmos-offer-autopilot-settings 中的x-ms-offer-throughput一個。 這些標頭不能一起指定。 |
備註
如果在資料庫上設置輸送量,則會創建一個 共用輸送量資料庫 ,其中所有集合共用預配的輸送量。 共用輸送量資料庫中的容器限製為25個。 如果不打算使用共用輸送量資料庫,請在不設置輸送量標頭的情況下創建資料庫。 深入瞭解。
身體
| 房產 | 為必填項目 | 類型 | 說明 |
|---|---|---|---|
| 識別碼 | 為必填項目 | 繩子 | 用戶為資料庫生成的唯一名稱。 這是一個不得超過 255 個字元的字串。 |
{
"id": "volcanodb2"
}
回應
標題
有關所有 Azure Cosmos DB 回應返回的標頭,請參閱 常見的 Azure Cosmos DB REST 回應標頭 。
狀態代碼
下表列出了此作返回的常見狀態代碼。 有關狀態代碼的完整清單,請參閱 HTTP 狀態代碼。
| HTTP 狀態代碼 | 說明 |
|---|---|
| 201 已建立 | 作成功時返回。 |
| 400 錯誤的請求 | 當 JSON 正文無效時返回。 檢查是否缺少大括號或引號。 |
| 409 衝突 | 當為新資料庫提供的ID已被現有資料庫採用時返回。 |
身體
| 房產 | 說明 |
|---|---|
| 識別碼 | 用戶為資料庫生成的唯一名稱。 |
| _擺脫 | 它是 系統生成的屬性。 資源識別碼 (_rid) 是資源模型上每個資源堆疊的階層式唯一標識符。 它在內部用於放置和導航資料庫資源。 |
| _ts | 它是系統生成的屬性。 它會指定資源上次更新的時間戳。 值為時間戳。 |
| _自我 | 它是系統生成的屬性。 這是資源的唯一可尋址 URI。 |
| _etag | 它是一個系統生成的屬性,用於指定樂觀併發控制所需的資源 etag 。 |
| _colls | 它是系統生成的屬性,用於指定集合資源的可尋址路徑。 |
| _使用者 | 它是系統生成的屬性,用於指定用戶資源的可尋址路徑。 |
{
"id": "volcanodb2",
"_rid": "CqNBAA==",
"_ts": 1449602962,
"_self": "dbs\/CqNBAA==\/",
"_etag": "\"00000a00-0000-0000-0000-56672f920000\"",
"_colls": "colls\/",
"_users": "users\/"
}
範例 1
以下示例創建一個資料庫。
POST https://contosomarketing.documents.azure.com/dbs HTTP/1.1
x-ms.date: 04/20/2021
authorization: type%3dmaster%26ver%3d1.0%26sig%3dsc0%2fu25RB8wSqbY1%2bUZqTGD0yCQC5KkGOAP%2bgnHFceQ%3d
Cache-Control: no-cache
User-Agent: contoso/1.0
x-ms-version: 2015-08-06
Accept: application/json
Host: contosomarketing.documents.azure.com
Content-Length: 19
Expect: 100-continue
{"id":"volcanodb2"}
HTTP/1.1 201 Created
Cache-Control: no-store, no-cache
Pragma: no-cache
Content-Type: application/json
Server: Microsoft-HTTPAPI/2.0
Strict-Transport-Security: max-age=31536000
x-ms-last-state-change-utc: Sun, 29 Nov 2015 02:25:35.212 GMT
etag: "00000a00-0000-0000-0000-56672f920000"
x-ms-resource-quota: databases=100;
x-ms-resource-usage: databases=15;
x-ms-schemaversion: 1.1
x-ms-quorum-acked-lsn: 859
x-ms-session-token: 860
x-ms-current-write-quorum: 3
x-ms-current-replica-set-size: 4
x-ms-request-charge: 4.95
x-ms-serviceversion: version=1.5.57.3
x-ms-activity-id: f171e571-994e-4dc2-b443-7c3d5fa4a293
x-ms-gatewayversion: version=1.5.57.3
Date: Tue, 08 Dec 2015 19:29:21 GMT
Content-Length: 169
{
"id": "volcanodb2",
"_rid": "CqNBAA==",
"_ts": 1449602962,
"_self": "dbs\/CqNBAA==\/",
"_etag": "\"00000a00-0000-0000-0000-56672f920000\"",
"_colls": "colls\/",
"_users": "users\/"
}
範例 2
以下示例創建手動輸送量為 400 RU/秒的 共用輸送量資料庫 。
x-ms-offer-throughput header 用於設置輸送量 (RU/s) 值。 它接受最小為 400 的數位,該數位以 100 為單位遞增。
POST https://contosomarketing.documents.azure.com/dbs HTTP/1.1
x-ms-date: Tue, 08 Dec 2015 19:29:22 GMT
authorization: type%3dmaster%26ver%3d1.0%26sig%3dsc0%2fu25RB8wSqbY1%2bUZqTGD0yCQC5KkGOAP%2bgnHFceQ%3d
Cache-Control: no-cache
User-Agent: contoso/1.0
x-ms-version: 2015-08-06
Accept: application/json
x-ms-offer-throughput = 400
Host: contosomarketing.documents.azure.com
Content-Length: 19
Expect: 100-continue
{"id":"volcanodb2"}
範例 3
以下示例創建自動縮放最大輸送量為 4000 RU/秒(在 400 - 4000 RU/秒之間縮放)的共用輸送量資料庫。
x-ms-cosmos-offer-autopilot-settings 標頭用於設置 maxThroughput,這是自動縮放的最大 RU/s 值。 它接受一個最小為 4000 的數位,該數位以 1000 為單位遞增。
備註
若要在現有資料庫或容器上啟用自動縮放,或從自動縮放切換到手動輸送量,請參閱替換 產品/服務一文。
POST https://contosomarketing.documents.azure.com:443/dbs HTTP/1.1
x-ms-version: 2018-12-31
x-ms-date: Wed, 22 Jul 2020 20:09:50 GMT
authorization: type%3dmaster%26ver%3d1.0%26sig%3dsc0%2fu25RB8wSqbY1%2bUZqTGD0yCQC5KkGOAP%2bgnHFceQ%3d
Accept: application/json
x-ms-cosmos-offer-autopilot-settings: {"maxThroughput": 4000}
Content-Type: application/json
User-Agent: contoso/1.0
Postman-Token: 81c0a4ac-4b7c-4f98-8d46-8c662969bc7e
Host: contosomarketing.documents.azure.com:443
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Content-Length: 27
{"id":"volcanodb3"}
另請參閱
- Azure Cosmos DB
- Azure Cosmos DB SQL API
- Azure Cosmos DB SQL API SDK
- 從 .NET 範例 REST