什么是 Azure SQL 数据库中的单一数据库?

适用于:Azure SQL 数据库

单一数据库资源类型使用自己的资源集在 Azure SQL 数据库中创建数据库,并通过服务器进行管理。 对于单一数据库,每个数据库都是独立的,使用专用的数据库引擎。 每个数据库在基于 DTU 的购买模型基于 vCore 的购买模型中具有自身的服务层级,以及一个定义了分配给数据库引擎的资源的计算大小。

单一数据库是 Azure SQL 数据库的部署模型。 另一种是弹性池

动态可伸缩性

可以在无服务器计算层级中,或者在预配的计算层级中采用小型计算大小,以低成本构建第一个基于小型单一数据库的应用。 可以根据解决方案的需要,随时以手动或编程方式更改计算或服务层级。 可在不给应用或客户造成停机的情况下调整性能。 动态可伸缩性可让数据库以透明方式响应快速变化的资源要求,使用户只需为用到的资源付费。

单一数据库和弹性池

单一数据库可以移进或移出弹性池以进行资源共享。 许多业务和应用程序只要能够创建单一数据库并按需调高或调低性能即可,尤其是当使用模式相对容易预测时。 但如果有无法预测的使用模式,则管理成本和业务模式就会变得相当困难。 弹性池旨在解决此问题。 概念很简单。 可以向池而不是单个数据库分配性能资源,并且仅需为池的总体性能资源付费,而无需为单一数据库的性能付费。

监视和警报

将内置的性能监视警报工具与性能等级组合使用。 使用这些工具,可以根据当前需求或项目性能的需求,快速评估调高或调低性能产生的影响。 此外,SQL 数据库可发出指标和资源日志,以便于监视。

可用性功能

单一数据库和弹性池提供许多可用性特征。 有关信息,请参阅可用性特征

Transact-SQL 的差异

Microsoft SQL Server 和 Azure SQL 数据库都完全支持应用程序使用的大多数 Transact-SQL 功能。 例如,核心 SQL 组件(如数据类型、运算符、字符串、算术、逻辑和光标函数等)在 SQL Server 和 SQL 数据库中的工作方式相同。 但是,DDL(数据定义语言)和 DML(数据操作语言)元素中的一些 T-SQL 差异导致存在仅部分受支持的 T-SQL 语句和查询(我们会在本文后面的内容中介绍)。

此外,还有一些功能和语法不受支持,因为 Azure SQL 数据库旨在将功能与 master 数据库和操作系统的依赖项隔离。 因此,大多数服务器级活动不适用于 SQL 数据库。 T-SQL 语句和选项在配置服务器级选项、配置操作系统组件或指定文件系统配置时不可用。 需要此类功能时,通常是以某种其他方式从 SQL 数据库或从其他 Azure 功能或服务获取相应的替代项。

有关详细信息,请参阅解析迁移到 SQL 数据库的过程中的 Transact-SQL 差异

安全性

SQL 数据库提供一系列内置安全性和符合性功能,帮助应用程序满足各种安全性和符合性要求。

下一步