使用CREATE DATABASE创建Azure SQL数据库时配置服务器默认资源
Azure SQL数据库创建时的资源配置指定与服务器级默认设置
直接在CREATE DATABASE语句中定义资源配置
完全可以在CREATE DATABASE语句里指定Serverless等资源模式,示例语句如下:
CREATE DATABASE YourDatabaseName ( EDITION = 'GeneralPurpose', SERVICE_OBJECTIVE = 'GP_S_Gen5_2', -- Serverless对应的计算规格格式为GP_S_<世代>_<核心数> AUTO_PAUSE_DELAY = 60, -- 设置自动暂停延迟(单位:分钟),Serverless特有配置 MIN_CPU = 0.25, -- 最小CPU核心数 MAX_CPU = 2 -- 最大CPU核心数 );
注意:Serverless仅支持**通用用途(GeneralPurpose)**服务层级,所以EDITION必须指定为GeneralPurpose。
服务器级默认配置的替代方案
目前Azure SQL数据库没有直接在服务器层面设置所有新建数据库默认资源配置的选项,但可以通过两种方式间接实现:
- 模板数据库复制:先创建一个配置好Serverless参数的模板库,后续创建新库时用
CREATE DATABASE ... AS COPY OF语句复制该模板,自动继承其资源配置。 - 自动化脚本/策略管控:用PowerShell、CLI编写封装创建逻辑的脚本,让软件调用脚本而非直接执行
CREATE DATABASE;或者通过Azure Policy强制要求新建数据库必须使用指定的资源参数。
适配自动创建数据库的软件
如果你的软件需要自动执行建库操作,可按以下方式调整:
- 修改软件的SQL执行逻辑,在
CREATE DATABASE语句中加入Serverless相关的资源配置参数。 - 若无法修改软件代码,可通过模板复制或脚本封装的方式,拦截原始建库请求并替换为符合资源要求的创建逻辑。
内容的提问来源于stack exchange,提问作者Mike
相关产品推荐
相关产品推荐

