本文提供鏡像資料庫項目定義結構明細。
定義元件
下表列出鏡像資料庫定義元件。
| 定義元件路徑 | 類型 | 為必填項目 | 說明 |
|---|---|---|---|
mirroring.json |
MirroredDatabase | ✅ | 描述鏡像資料庫專案 |
.platform |
PlatformDetails | ❌ | 描述專案的元數據 |
鏡像資料庫項目的定義部分會建構如下:
-
路徑:檔名,例如:
mirroring.json - 承載類型:InlineBase64
- Payload:請參閱 從Base64譯碼的承載內容範例
MirroredDatabase
描述鏡像資料庫專案。
| 名稱 | 類型 | 為必填項目 | 說明 |
|---|---|---|---|
source |
SourceProperties | 是 | 描述來源類型屬性。 |
target |
目標屬性 | 是 | 描述目標類型屬性。 |
mountedTables |
MountedTable[] | 假的 | 列出要從源資料庫鏡像的數據表。 (如果未指定此屬性,則會鏡像所有數據表。新的數據表也會自動新增至複寫。 |
SourceProperties
描述要鏡像的源資料庫。
| 名稱 | 類型 | 為必填項目 | 說明 |
|---|---|---|---|
type |
來源類型 | 是 | 源資料庫的型別。 |
typeProperties |
SourceTypeProperties | 是 | 來源連線的屬性,例如 connection、 database 等。 |
來源類型
來源類型的最新值(可能會隨著時間新增其他來源類型。):
| 名稱 | 說明 |
|---|---|
Snowflake |
代表 Snowflake 來源。 |
AzureSqlDatabase |
表示 Azure SQL Database 來源。 |
AzureSqlMI |
表示 Azure SQL 受控實例來源。 |
AzurePostgreSql |
代表 Azure PostgreSQL 來源。 |
CosmosDb |
表示 Cosmos DB 來源。 |
SqlServer2025 |
表示 SQL Server 2025 來源。 |
MSSQL |
代表 sql Server 2016-2022 來源Microsoft。 |
GenericMirror |
表示開啟的鏡像來源。 |
SourceTypeProperties
描述來源類型屬性。
| 名稱 | 類型 | 為必填項目 | 說明 |
|---|---|---|---|
connection |
Guid | 假的 | 源資料庫的連接標識碼。 來源類型不需要 GenericMirror 。 |
database |
繩子 | 假的 | 來源資料庫的名稱。 、 AzureSqlDatabaseAzureSqlMI或 AzurePostgreSql 來源類型不需要 GenericMirror。 |
目標屬性
描述目標類型屬性。
| 名稱 | 類型 | 為必填項目 | 說明 |
|---|---|---|---|
type |
繩子 | 是 | 目標的類型(目前僅 MountedRelationalDatabase 支援)。 |
typeProperties |
TargetTypeProperties | 是 | 目標的屬性,例如 defaultSchema 和 format。 |
TargetType屬性
描述目標的屬性。
| 名稱 | 類型 | 為必填項目 | 說明 |
|---|---|---|---|
defaultSchema |
繩子 | 假的 | 目標的默認架構。 |
format |
繩子 | 是 | 目標的格式(目前僅 Delta 支援)。 |
MountedTable
描述要從源資料庫鏡像的數據表。
| 名稱 | 類型 | 為必填項目 | 說明 |
|---|---|---|---|
source |
MountedTableSourceProperties | 是 | 來源資料表的屬性,例如 schemaName 和 tableName。 |
MountedTableSourceProperties
描述源數據表的屬性。
| 名稱 | 類型 | 為必填項目 | 說明 |
|---|---|---|---|
typeProperties |
MountedTableSourceTypeProperties | 是 | 輸入源數據表的屬性。 |
MountedTableSourceTypeProperties
描述源數據表的類型屬性。
| 名稱 | 類型 | 為必填項目 | 說明 |
|---|---|---|---|
schemaName |
繩子 | 是 | 源數據表的架構名稱。 |
tableName |
繩子 | 是 | 源數據表的數據表名稱。 |
mirroring.json 範例
若要查看如何建立 JSON 檔案來描述各種來源的鏡像資料庫專案,請參閱 各種來源的鏡像資料庫定義。
{
"properties": {
"source": {
"type": "Snowflake",
"typeProperties": {
"connection": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1",
"database": "TESTDB"
}
},
"target": {
"type": "MountedRelationalDatabase",
"typeProperties": {
"defaultSchema": "dbo",
"format": "Delta"
}
},
"mountedTables": [
{
"source": {
"typeProperties": {
"schemaName": "dbo",
"tableName": "testtable"
}
}
}
]
}
}
定義範例
以下是Base64編碼鏡像資料庫定義的範例,其中範例mirroring.json中的內容會編碼在Base64中,並將路徑設定為mirroring.json的payload欄位中:
{
"displayName": "myMirroredDatabase",
"type": "MirroredDatabase",
"description": "Create Mirrored Database item with definition",
"definition": {
"parts": [
{
"path": "mirroring.json",
"payload": "<base64 encoded string>",
"payloadType": "InlineBase64"
},
{
"path": ".platform",
"payload": "<base64 encoded string>",
"payloadType": "InlineBase64"
}
]
}
}