使用 Terraform 将 Azure SQL 恢复到时间点?
restore Azure SQL to poin-in-time using Terraform?
我在测试和 QA 环境中有一个 Azure SQL 数据库,我们经常需要从预生产环境的时间点备份中恢复它。
是否可以使用 Terraform 使流程自动化?
谢谢
您可以使用 Create mode = PointInTimeRestore
然后指定 creation_source_database_id
这是参考数据库资源 ID & restore_point_in_time
这将是源数据库的 ISO8601 格式的时间点将恢复以创建新数据库。
根据基本要求,azurerm_mssql_database
块将如下所示,您可以根据需要使用其他参数修改它:
resource "azurerm_mssql_database" "sql_db" {
name = var.name
server_id = var.server_id
collation = var.collation
license_type = "BasePrice"
max_size_gb = var.max_size_gb
read_scale = var.read_scale
sku_name = var.sku_name
zone_redundant = var.zone_redundant
auto_pause_delay_in_minutes = var.auto_pause_delay_in_minutes
create_mode = "PointInTimeRestore"
creation_source_database_id = var.creation_source_database_id
min_capacity = var.min_capacity
restore_point_in_time = "2021-12-06T01:57:37Z"
}
参考:
我在测试和 QA 环境中有一个 Azure SQL 数据库,我们经常需要从预生产环境的时间点备份中恢复它。
是否可以使用 Terraform 使流程自动化?
谢谢
您可以使用 Create mode = PointInTimeRestore
然后指定 creation_source_database_id
这是参考数据库资源 ID & restore_point_in_time
这将是源数据库的 ISO8601 格式的时间点将恢复以创建新数据库。
根据基本要求,azurerm_mssql_database
块将如下所示,您可以根据需要使用其他参数修改它:
resource "azurerm_mssql_database" "sql_db" {
name = var.name
server_id = var.server_id
collation = var.collation
license_type = "BasePrice"
max_size_gb = var.max_size_gb
read_scale = var.read_scale
sku_name = var.sku_name
zone_redundant = var.zone_redundant
auto_pause_delay_in_minutes = var.auto_pause_delay_in_minutes
create_mode = "PointInTimeRestore"
creation_source_database_id = var.creation_source_database_id
min_capacity = var.min_capacity
restore_point_in_time = "2021-12-06T01:57:37Z"
}
参考: