Azure SQL 数据库介绍
Azure SQL 数据库是微软基于 Azure 云计算平台推出的一款关系型数据库服务,专为满足现代应用程序开发与数据管理的复杂需求而精心打造。它巧妙融合了传统 SQL Server 的强大功能以及云计算所具备的灵活性与可扩展性,为企业和开发者提供了高效、可靠的数据管理解决方案。
高可用性
Azure SQL 数据库采用了内置冗余和自动故障转移机制,这意味着在硬件故障、网络中断或自然灾害等极端情况下,数据仍能保持随时可用。通过多副本技术,数据被实时复制到多个物理节点,一旦主节点出现故障,系统会在极短时间内自动切换到备用节点,确保业务的持续稳定运行,有效避免因停机造成的经济损失。相关的架构对比可以参考如下截图:
功能比对
Azure SQL 数据库 | Azure SQL 托管实例 | Azure VM 上的 SQL Server |
---|---|---|
支持大多数本地数据库级功能。 提供最常用的 SQL Server 功能。 保证 99.995% 的可用性。 内置备份、修补和恢复。 最新稳定的数据库引擎版本。 可将必要的资源(CPU/存储)分配到单个数据库。 内置高级智能和安全性。 联机更改资源(CPU/存储)。 | 几乎支持所有的本地实例级和数据库级功能。 与 SQL Server 高度兼容。 保证 99.99% 的可用性。 内置备份、修补和恢复。 最新稳定的数据库引擎版本。 从 SQL Server 轻松迁移。 Azure 虚拟网络中的专用 IP 地址。 内置高级智能和安全性。 联机更改资源(CPU/存储)。 | 可以完全控制 SQL Server 引擎。 支持所有本地功能。 高达 99.99% 的可用性。 完全可与匹配的本地 SQL Server 版本搭配使用。 从 SQL Server 轻松迁移。 Azure 虚拟网络中的专用 IP 地址。 可将应用程序或服务部署到 SQL Server 所在的主机上。 从 Azure 门户管理 SQL Server VM,并在向 SQL Server IaaS 代理扩展注册时解锁其他许多益处。 |
可能难以从 SQL Server 迁移。 某些 SQL Server 功能不可用。 可配置的维护时段。 只能使用数据库兼容性级别来实现与 SQL Server 版本的兼容。 Azure 专用链接支持专用 IP 地址。 | 仍有极少量的 SQL Server 功能不可用。 可配置的维护时段。 只能使用数据库兼容性级别来实现与 SQL Server 版本的兼容。 | 你可以使用手动或自动备份。 需要实施高可用性解决方案。 更改资源(CPU/存储)会造成停机 |
最多 128 TB 的数据库。 | 最多 16 TB。 | 具有高达 256 TB 存储空间的 SQL Server 实例。 实例可以支持所需数量的数据库。 |
本地应用程序可以访问 Azure SQL 数据库中的数据。 | 使用 Azure Express Route 或 VPN 网关实现本机虚拟网络并连接到本地环境。 | 借助 SQL 虚拟机,应用程序可以一部分在云中运行,一部分在本地运行。 例如,可以通过 Azure 虚拟网络,将本地网络和 Active Directory 域扩展到云中。 有关混合云解决方案的详细信息,请参阅将本地数据解决方案扩展到云。 |
相比本地安装的sqlserver,azure sql减少了运维人员的成本与时间消耗,使得对数据库的维护成本大大降低。
常见问题分析
问题一:
数据库的性能突然下降或者数据库链接突然中断。并在不久后自动恢复。
1.先检查数据库的指标信息是否有异常,查询io,cpu,memory等信息。如果有资源使用突发极高,之后指标中断且无法连接,可能就是触发了后台的监控failover,自动进行了节点切换保证资源健康状态。
2.检查数据库是否有计划维护
在服务运行状况进行检查或者配置警告来提前获取相关的维护信息以便进行进一步的计划或者操作:
规划 Azure 维护事件 - Azure SQL Database & Azure SQL Managed Instance | Microsoft Learn
为了保持 Azure SQL 数据库和 Azure SQL 托管实例服务的安全、合规性、稳定性和高性能,将持续通过服务组件进行更新。 得益于新式可靠的服务体系结构和创新技术(如热修补),大多数更新在可用性方面都是完全透明且不会产生不良影响的。 尽管如此,少数类型的更新会导致短暂的服务中断并需要特殊处理。
维护事件可能产生单个或多个重新配置,具体取决于维护事件开始时主要副本和次要副本的集合。 平均而言,每个计划内维护事件会出现 1.7 个重新配置。 重新配置通常在 30 秒内完成。 平均 8 秒。 如果应用程序处于已连接状态,则必须重新连接至新的数据库主要副本。
如果在尝试进行新的连接时数据库正在进行重新配置,且新的主要副本尚未处于联机状态,则会显示错误 40613(数据库不可用):Database '{databasename}' on server '{servername}' is not currently available. Please retry the connection later.
如果数据库有一个长时间运行的查询,则重新配置期间此查询会中断,需要重启。
配置维护时段 - Azure SQL Database | Microsoft Learn
注意如下定价层不可进行配置:
先写这么多,后续再慢慢继续补充。