SuperAPI AI 工具集

azure-sql

部署与运维

查看项目

更新于 10-15 08:59

技能介绍

用途

Azure SQL 技能用于在 Azure 上部署和管理托管数据库,覆盖 Azure SQL Database、弹性池(Elastic Pools)和 Cosmos DB。它提供服务器与数据库的创建、安全配置、备份与复制等操作指引,适合在 Azure 上部署托管数据库的场景。

适用场景

  • 需要在 Azure 上使用全托管关系型数据库。
  • 应用需要异地复制以实现灾难恢复。
  • 需要通过弹性池在多个数据库之间实现弹性扩展。
  • 正在将本地 SQL Server 工作负载迁移到云端。
  • 需要全球分布式 NoSQL 数据库(Cosmos DB)。

前置条件

安装 Azure CLI:

curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash

登录并设置订阅:

az login
az account set --subscription "my-subscription-id"

创建资源组:

az group create --name database-rg --location eastus

主要能力

SQL Server 与数据库创建

创建逻辑 SQL Server,可启用 Azure AD 身份验证、仅 Azure AD 身份验证,并设置最小 TLS 版本、关闭公共网络访问。

创建数据库支持多种版本:

  • General Purpose(可配合 Serverless 计算模型、自动暂停延迟、最小容量、最大容量、备份存储冗余等参数)。
  • Business Critical(用于生产,可设置服务目标、最大容量、区域冗余、读扩展)。
  • Hyperscale(用于大型工作负载,可设置 HA 副本数)。

可列出服务器上的数据库。

弹性池

创建弹性池(可设置版本、容量、每库最大/最小容量、最大容量、区域冗余),将数据库移入弹性池,并监控弹性池使用情况。

防火墙规则与网络安全

  • 允许 Azure 服务访问。
  • 允许特定 IP 范围(如办公网络)。
  • 允许当前客户端 IP。
  • 创建 VNet 规则以允许子网访问。
  • 列出和删除防火墙规则。

异地复制与故障转移

  • 创建辅助服务器并建立故障转移组(可设置自动故障转移策略、宽限期、加入数据库)。
  • 查看故障转移组状态。
  • 手动故障转移(用于测试或计划维护)。
  • 创建活动异地复制(不使用故障转移组)。

备份与恢复

  • 配置短期保留(1-35 天,可设置差异备份间隔)。
  • 配置长期保留(每周、每月、每年保留策略及年内周数)。
  • 将数据库恢复到某个时间点。
  • 列出长期备份。
  • 将数据库导出为 bacpac。

性能调优

  • 启用自动调优。
  • 查看数据库性能建议。
  • 扩展数据库层级(调整服务目标)。
  • 启用 Query Store(通过 SQL)。
  • 查看 DTU/vCore 使用指标。

安全加固

  • 启用高级威胁防护(可设置通知邮箱、是否通知账户管理员)。
  • 启用审计到存储或 Log Analytics(可设置保留天数)。
  • 启用透明数据加密(默认已启用)。
  • 启用漏洞评估。

Cosmos DB

  • 创建 Cosmos DB 账户(SQL API,可设置默认一致性级别、多区域位置、自动故障转移、多写入位置)。
  • 创建数据库(可设置吞吐量)。
  • 创建容器(可设置分区键路径、吞吐量、索引策略)。
  • 启用自动缩放吞吐量(设置最大吞吐量)。

Terraform 配置

提供 Terraform 资源示例,包括:

  • azurerm_mssql_server(服务器,含 Azure AD 管理员、最小 TLS 版本、关闭公共网络访问)。
  • azurerm_mssql_database(数据库,含排序规则、许可类型、SKU、最大容量、区域冗余、读扩展、短期与长期保留策略、威胁检测策略)。
  • azurerm_mssql_failover_group(故障转移组,含伙伴服务器、读写端点故障转移策略)。
  • azurerm_private_endpoint(私有终结点,含私有服务连接)。

故障排查

技能提供常见症状、原因与修复对照,包括:无法连接 SQL Server、登录失败、DTU 达到 100%、异地复制延迟高、时间点还原失败、弹性池 eDTU 耗尽、TDE 密钥轮换失败、应用连接超时。

相关技能

  • azure-networking:SQL 访问的私有终结点与 VNet 规则。
  • azure-functions:无服务器数据访问的 SQL 绑定。
  • terraform-azure:基于 Terraform 的 SQL 基础设施配置。
  • arm-templates:用于 SQL 部署的 Bicep 模板。

限制

资料未提供该技能的收费、价格、平台支持范围、性能效果或具体使用步骤之外的额外说明,相关事实暂未提供。