在 SQL Server 2025 CU1 中创建 CAG (Contained Availability Group)

news/2026/1/25 14:53:20/文章来源:https://www.cnblogs.com/sysin/p/19529704

SQL Server 2025 CU1 中的 CAG (Contained Availability Group,包含的可用性组)

SQL Server 2025 - AI ready enterprise database from ground to cloud

请访问原文链接:https://sysin.org/blog/sql-server-2025/ 查看最新版。原创作品,转载请保留出处。

作者主页:sysin.org


SQL Server 2025

SQL Server 2025

2026 年 1 月 16 日,微软宣布 SQL Server 2025 在 Red Hat Enterprise Linux (RHEL) 10Ubuntu 24.04 上的正式发布(GA),从 CU1 版本 开始。此里程碑使企业能够在最新的 Linux 发行版上部署 SQL Server 2025,确保关键任务工作负载的稳健兼容性、增强的安全性和最佳性能 (sysin)。正式发布强化了我们在多样化 Linux 环境中提供现代、安全且 AI 就绪数据库平台的承诺。

创建 Contained Availability Group(CAG)

ℹ️ 简介(Introduction)

Contained Availability Group(CAG,包含的可用性组) 的设计目标是通过将系统数据库(master、msdb)封装在可用性组内部,从而简化高可用性和灾难恢复。这意味着登录名、作业、凭据以及其他元数据都会在各副本之间自动复制,无需手动同步,从而降低运维复杂度。

SQL Server 2025 CU1 开始,你可以通过启用会话上下文键,或使用自动化存储过程 [msdb].[dbo].sp_sysutility_cag_create_db直接通过 CAG 监听器创建或还原数据库,而无需连接到物理 SQL Server 实例。

为什么 Contained AGs 很重要

  • 自包含的高可用单元:每个 CAG 都拥有独立的 master 和 msdb 副本,使其不依赖于物理 SQL 实例。
  • 简化故障转移:当 AG 发生故障转移时,所有相关元数据都会随之迁移,确保应用无需人工干预即可继续运行。
  • 更强的自动化能力:适用于限制直接访问 SQL 实例的场景 (sysin),允许通过 AG 监听器完成操作。
  • 增强的安全性:通过限制实例级访问来降低暴露面,操作范围可限定在 AG 上下文内。
  • 精简的管理方式:无需在副本之间编写和维护登录名、作业复制脚本。

Step 1: 为可用性组准备数据库

本示例使用 Linux 上的 SQL Server;但这些步骤同样适用于 Windows 上的 SQL Server。

在本示例中,我们将一个名为 CAGDB 的现有数据库添加到 Contained Availability Group(CAG)中。在将数据库加入 CAG 之前 (sysin),请确认其已配置为 FULL 恢复模式,并执行一次 完整数据库备份

ALTER DATABASE CAGDB SET RECOVERY FULL; GO
BACKUP DATABASE CAGDB TO DISK = N'/var/opt/mssql/backups/CAGDB.bak' WITH INIT, COMPRESSION; GO

注意:在 Linux 上,请确保备份目标目录存在,并且归 mssql 用户所有。

sudo mkdir -p /var/opt/mssql/backups
sudo chown mssql:mssql /var/opt/mssql/backups

Step 2: 创建 Contained Availability Group

在 Linux SQL Server 节点上执行:

CREATE AVAILABILITY GROUP [CAGDemo]
WITH ( CLUSTER_TYPE = EXTERNAL, CONTAINED )
FOR DATABASE [CAGDB]
REPLICA ON
N'node1' WITH (ENDPOINT_URL = N'tcp://node1:5022',AVAILABILITY_MODE = SYNCHRONOUS_COMMIT,FAILOVER_MODE = EXTERNAL,SEEDING_MODE = AUTOMATIC
),
N'node2' WITH (ENDPOINT_URL = N'tcp://node2:5022',AVAILABILITY_MODE = SYNCHRONOUS_COMMIT,FAILOVER_MODE = EXTERNAL,SEEDING_MODE = AUTOMATIC
);
GO-- 连接到辅助副本并加入 AG
ALTER AVAILABILITY GROUP [CAGDemo] JOIN WITH (CLUSTER_TYPE = EXTERNAL);
ALTER AVAILABILITY GROUP [CAGDemo] GRANT CREATE ANY DATABASE;

Step 3: 配置监听器并连接

创建监听器,并使用 SSMS 或 sqlcmd 进行连接:

ALTER AVAILABILITY GROUP [CAGDemo]
ADD LISTENER N'CAGDemoListener'
(WITH IP ( (N'*.*.*.*', N'255.255.255.0') ),PORT = 1453
);
GO

Step 4: 通过 CAGDemoListener 连接并尝试创建数据库(失败)

通过监听器连接后执行:

CREATE DATABASE TestCAGDB;

结果:Msg 262, Level 14, State 1: CREATE DATABASE is not allowed in this context.

这是因为在包含的 AG 会话中 (sysin),默认禁止创建数据库。

Step 5: 在 CAG 会话或实例 master 中启用数据库创建

EXEC sp_set_session_context = N'allow_cag_create_db', @value = 1;

此操作会为当前会话启用数据库创建权限。

Step 5: 再次尝试创建数据库(成功)

CREATE DATABASE TestCAGDB;

结果:数据库已在包含的 AG 上下文中成功创建。

只有在 CAG 上下文中拥有 dbcreator 角色的用户才能执行该操作。

Step 6: 备份数据库

ALTER DATABASE TestCAGDB SET RECOVERY FULL;
BACKUP DATABASE TestCAGDB TO DISK = N'/var/opt/mssql/data/backups/TestCAGDB.bak';

Step 7: 将数据库添加到 CAG

ALTER AVAILABILITY GROUP [CAGDemo] ADD DATABASE [TestCAGDB];

Automation

要自动化执行第 4 到第 7 步,请在通过 CAG 监听器连接的上下文中执行以下存储过程:

EXEC [msdb].[dbo].sp_sysutility_cag_create_db @database_name = [ADVENTUREWORKS];

🧩 结论(Conclusion)

Contained Availability Group 在简化 SQL Server 高可用性方面迈出了重要一步。通过将系统数据库封装在 AG 上下文中,它消除了在副本之间同步登录名、作业和凭据的复杂性。

借助 SQL Server 2025 CU1 中新增的能力,组织现在可以通过 sp_set_session_context 直接从 AG 监听器创建或还原数据库,从而简化自动化流程并降低运维开销。

📚 参考资料(References)

  • 什么是 Contained Availability Group
  • 在 Linux 上为 SQL Server 部署 Pacemaker 集群

部分内容来自官网,有删改。

补丁更新及下载

SQL Server 2025 RTM 64-Bit English/简体中文/繁体中文 (Evaluation, Enterprise Developer, Standard Developer, Express)

  • 请访问:https://sysin.org/blog/sql-server-2025/

SQL Server 2025 RTM 64-Bit English/简体中文/繁体中文 (Enterprise, Standard)

  • 请访问:https://sysin.org/blog/sql-server-2025/

索引页面:

  • Microsoft SQL Server 下载汇总

更多:Windows 下载汇总

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1214829.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

GPT-5.2-Pro与Sora2全面爆发:普通开发者如何低成本构建AGI级应用?(附多模态整合架构图)

摘要: 2026年伊始,AI技术栈再次迎来核弹级更新。 GPT-5.2重塑了逻辑推理的天花板。 Sora2与Veo3彻底消除了视频生成的物理幻觉。 对于开发者而言,这既是黄金时代,也是焦虑时代。 面对动辄上千美元的API订阅费和碎片化的技术栈。 我…

文字游戏:进化之路2.0二开完美版本源码 带后台

内容目录 一、详细介绍二、效果展示1.部分代码2.效果图展示 三、学习资料下载 一、详细介绍 文字游戏:进化之路2.0二开完美版本源码 带后台 基于原版二开。原版没有后台功能,前端某些功能也是没有的! 后端部分功能参考额曜崽i的版本思路&am…

基于Kubo公式的石墨烯电导率与表面阻抗计算(MATLAB实现)

一、理论基础 石墨烯的电导率可通过Kubo公式计算,包含Drude电导率(自由载流子贡献)和带间跃迁电导率(量子干涉贡献)。表面阻抗则由电导率导出,反映电磁波在石墨烯表面的反射/透射特性。 1. Kubo公式核心表达…

C#核心

类和对象 namespace 类和对象 {enum E_SexType{man,woman,}//成员变量,初始值:值类型默认都是0,引用类型默认都是null//访问修饰符public class Person(){public string name;public int age;public enum E_SexType…

C#进阶

Arraylist ArryList array = new ArrayList();Stack 本质是object[]数组,后进先出 Stack stack = new Stack(); //压栈 stack.push(1); //取 object v = stack.Pop(); //查,只能查看栈顶的内容 v = stack.peek; //查看…

2026年市场上有名的打包带厂家排行,市场上有实力的打包带直销厂家广营宏利满足多元需求

在工业制造与物流运输领域,打包带作为关键的紧固与封装材料,其性能与可靠性直接关系到货物安全与运输效率。随着制造业的升级和供应链管理的精细化,市场对打包带产品的需求正从基础的“捆扎”功能,向高强度、耐腐蚀…

BES(恒玄)蓝牙平台EQ 调试和设定

1.EQ调试原理 说这个部分是为了同学们更好的分析解决问题 打开所使用工程的target.mk文件,修改宏PC_CMD_UART ?= 1 同时关闭DEBUG=0 Bes提供了多种滤波方式,可在target.mk中进行配置,下图是我使用的配置,具体要怎么配置,可一个根据实际的项目需求更改。 然后我们看下…

将分散的Pytest测试脚本统一接入测试平台:FastAPI改造方案详解

在上一篇文章《Pytest 测试用例自动生成:接口自动化进阶实践》中,我们已经解决了“如何高效编写和维护接口自动化用例”的问题。 然而,随着业务的发展和团队规模的扩大,很多公司会选择开发自己的测试平台,以实现更…

基于模糊控制的MATLAB避障算法实现

一、算法原理与系统架构 模糊控制避障通过经验规则替代精确数学模型,适用于动态复杂环境。其核心模块包括:输入变量:障碍物距离、角度偏差、目标方向等隶属函数:将精确量转换为模糊集合(如"近"、"…

为什么网络上搜索不到“桑桥网络”这家公司了?

近期有客户在搜索引擎或社交平台上查找“桑桥网络”时,发现相关信息变少,甚至搜索不到公司官网或品牌资料,于是产生疑问:“桑桥网络是不是不做了?” 答案是:不是公司消失了,而是品牌升级了。桑桥网络已正式更名…

说说上海MNS2.0配电柜批量定制,如何选择厂家?

随着工业自动化与数字化转型的加速,低压配电系统作为企业生产运营的能源心脏,其稳定性、智能化水平直接决定了企业的生产效率与运维成本。MNS2.0配电柜作为新一代智能低压开关设备,已成为众多工业企业升级配电系统的…

2026年阜阳地区,为你分享专业的新能源汽修培训职业学校推荐

本榜单依托全维度市场调研与真实行业口碑,深度筛选出五家标杆职业学校,为学生及家长选型提供客观依据,助力精准匹配适配的职业教育伙伴。 TOP1 推荐:合肥东辰职业学校 推荐指数:★★★★★ | 口碑评分:合肥首推专…

自助KTV加盟哪家服务靠谱,长春鱼乐圈资料汇总

在自助KTV行业竞争愈发激烈的当下,一套成熟的加盟服务体系是创业者降低风险、快速盈利的核心保障。面对市场上鱼龙混杂的自助KTV加盟品牌,如何找到既靠谱又契合自身需求的合作伙伴?以下结合行业痛点与服务能力,为你…

2026年全国实力强的博士留学机构排名推荐,这些企业值得关注

(涵盖博士留学申请、科研背景提升、产学研人才对接等核心服务领域服务商推荐) 2026年全球高等教育竞争持续加剧,博士留学申请已从单一的材料递交升级为学术背景+科研能力+院校资源的综合比拼。无论是梦校offer冲刺、…

2025年成都火锅人气排行:3公里内口碑爆表的十大必吃店,牛肉火锅/麻辣烫/美食/市井火锅nbsp;成都火锅约会地点哪家好吃

成都火锅市场格局分析 作为川渝美食文化的代表,成都火锅市场近年来呈现出多元化发展趋势。根据大众点评、小红书等平台数据显示,方圆3公里范围内的火锅品牌竞争激烈,消费者更倾向于选择口碑优良、品质稳定的火锅品牌…

聊聊2026年别墅外墙砖靠谱厂家,广东和陶家居实力上榜

2026年家居建材行业持续升级,外墙砖作为建筑外立面的核心材料,其品质稳定性、耐候性与美学表现力直接决定建筑的使用寿命与视觉质感。无论是农村自建房的耐用需求、别墅工程的定制,还是新农村项目的批量交付,优质外…

读书笔记三:从需求到交付,坚守软件质量的核心底线

软件开发的最终目标,是交付一款满足用户需求、质量可靠的软件产品。而从需求提出到产品交付的整个过程,每一个环节都关乎软件质量,任何一个环节的疏漏,都可能导致软件缺陷,影响用户体验,甚至导致项目失败。邹欣老…

金属带材环保电镀费用知多少,哪家收费合理?

2026年新能源汽车、3C电子产业爆发式增长,金属带材与精密零部件的电镀工艺成为决定终端产品性能与寿命的关键环节。无论是超薄金属带材的高精度镀金、超厚零部件的耐腐蚀镀镍,还是全链路环保合规的电镀解决方案,优质…

详细介绍:STM32外设学习--DMA直接存储器读取--学习笔记。

详细介绍:STM32外设学习--DMA直接存储器读取--学习笔记。pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consola…

基于STM32的智能宠物监控设计与实现

目录 STM32智能宠物监控系统概述硬件设计软件设计功能实现应用案例扩展方向 源码文档获取/同行可拿货,招校园代理 :文章底部获取博主联系方式! STM32智能宠物监控系统概述 智能宠物监控系统基于STM32微控制器,结合传感器、摄像头、无线通信模…