SQL Server 2025数据库引擎新特性汇总

SQL Server 2025数据库引擎新特性汇总

 

预览功能(PREVIEW_FEATURES)

启用 PREVIEW_FEATURES 数据库作用域配置,以测试和探索向量索引等预览功能。此设置允许您即使在 SQL Server 正式发布后,仍可使用部分预览功能。 通过此配置启用的功能将在未来的累积更新中正式可用。一旦某个功能通过累积更新正式可用,该功能将不再需要 PREVIEW_FEATURES 配置。 这些功能仅供开发或测试使用,不建议在生产环境中使用。

USE HellasGateV2
GO
SELECT * FROM sys.database_scoped_configurations
WHERE [name] = 'PREVIEW_FEATURES'
GO
ALTER DATABASE SCOPED CONFIGURATION
SET PREVIEW_FEATURES = ON;
GO

扩展事件会话加入时间限制选项

  • 说明
  1. 带 MAX_DURATION 的自动停止 现在可以在创建或修改事件会话时指定 MAX_DURATION(以秒为单位),使其在设定时间后自动停止扩展事件会话。

  2. 资源管理 这有助于防止会话无限运行,避免消耗资源并生成过多诊断数据。

  3. 手动控制仍可用 可以随时使用ALTER EVENT SESSION ... STATE = STOP手动停止扩展事件会话。

  4. 灵活修改 可以使用ALTER EVENT SESSION更改或移除扩展事件会话的时间限制,但会话必须先停止扩展事件会话。

  5. 系统视图支持 sys.server_event_sessions视图包含max_duration列,显示扩展事件会话的持续时间(0 表示无限制)。

  • 示例
CREATE EVENT SESSION [TimeBoundSession] ON SERVER
ADD EVENT sqlserver.sql_statement_completed
WITH (MAX_DURATION = 600, STARTUP_STATE = OFF); -- (例如 10分钟,单位秒)ALTER EVENT SESSION [TimeBoundSession] ON SERVER
WITH (MAX_DURATION = 1200); -- 修改为20分钟ALTER EVENT SESSION [TimeBoundSession] ON SERVER
WITH (MAX_DURATION = UNLIMITED);ALTER EVENT SESSION [TimeBoundSession] ON SERVER STATE = STOP;

优化的 sp_executesql存储过程

unsetunset概述(Overview)unsetunset
  1. 串行编译(Serialized Compilation)

启用后,sp_executesql 批处理会像存储过程一样编译 —— 仅一个会话进行编译,其他会话等待,减少冗余执行计划的生成。

  1. 执行计划重用(Plan Reuse)

首次编译后,其他会话会重用缓存的执行计划,而非自行编译,提升性能和缓存效率。

  1. 编译锁机制(Compile Lock Mechanism)

编译锁确保同一时间仅一个会话进行编译,防止相同批处理的并行编译。

  1. 推荐设置(Recommended Settings)

为获得最佳效果,若启用了自动更新统计信息,还应启用ASYNC_STATS_UPDATE_WAIT_AT_LOW_PRIORITY,以避免长时间等待和排他锁。

  1. 使用 T-SQL 启用(Enable with T-SQL)
ALTER DATABASE SCOPED CONFIGURATION SET OPTIMIZED_SP_EXECUTESQL = ON;
unsetunset执行计划缓存(Plan Cache)unsetunset
  1. 启用OPTIMIZED_SP_EXECUTESQL可对 SQL Server 2025 的执行计划缓存产生积极影响。

减少执行计划冗余(Reduced Plan Duplication) 相同的 sp_executesql 批处理(排除参数值)将仅编译一次并共享同一执行计划,最大程度减少执行计划缓存中的冗余条目。

  1. 提升执行计划重用率(Improved Plan Reuse)

后续执行将重用已编译的执行计划,这可提升性能并减少编译期间的 CPU 使用率。

  1. 串行编译(Serialized Compilation)

同一时间仅一个会话编译批处理,其他会话等待或重用执行计划 —— 这避免了同一逻辑的多次同时编译。

  1. 降低缓存碎片(Lower Cache Fragmentation)

通过避免同一执行计划的多个版本,缓存保持更整洁、更高效。

  1. 首次编译期间的潜在等待(Potential Waits During First Compilation)

会话在首次执行期间可能短暂等待编译锁,但这通常被长期的缓存收益所抵消。

unsetunset内存使用(Memory Usage)unsetunset

启用OPTIMIZED_SP_EXECUTESQL可通过改进执行计划的处理方式,对 SQL Server 2025 的内存使用产生积极影响。

  • 内存使用优势如下
  1. 更少的冗余执行计划(Fewer Duplicate Plans)
  2. 更整洁的执行计划缓存(Cleaner Plan Cache)
  3. 更低的编译开销(Lower Compilation Overhead)
  • 潜在注意问题
  1. 初始编译锁等待(Initial Compile Lock Waits)

  2. 执行计划缓存压力降低(Plan Cache Pressure Reduction)


ZSTD 数据库备份压缩算法

  1. 更快而且更高效

  2. 与旧的 'MS_XPRESS' 算法相比,ZSTD 提供了更优的速度和压缩比。

  3. 执行备份时使用指定的压缩算法

BACKUP DATABASE [databasename]  ... WITH COMPRESSION (ALGORITHM = ZSTD) -- 备份语句,指定压缩算法为 ZSTD
  • 服务器范围的默认设置

使用以下语句将 ZSTD 设置为所有备份的默认压缩算法:


-- 压缩算法取值:0 = MS_XPRESS(默认),1 = 无,2 = XPRESS,3 = ZSTDEXEC sp_configure 'backup compression algorithm', 3; -- 配置备份压缩算法为 ZSTD
RECONFIGURE; -- 使配置生效

内存优化(XTP)相关文件和文件组的移除

现在可通过删除所有内存优化文件和文件组,完全移除内存优化OLTP的相关表和数据文件—— 这在早期版本中无法实现。

  • 验证步骤
  1. 使用 sys.dm_db_xtp_undeploy_status 检查是否使用了内存优化表(deployment_state = 1 或 2)。
SELECT *
FROM sys.dm_db_xtp_undeploy_status;
  1. 删除所有内存优化表相关对象

在移除数据文件之前,必须删除所有内存优化表、表类型和本机编译的存储过程。

  1. 移除文件和文件组

使用 ALTER DATABASE ... REMOVE FILE 和 ALTER DATABASE ... REMOVE FILEGROUP 来删除最后一个文件和文件组。

  1. 长时间运行的移除过程

如果移除停滞,执行 CHECKPOINT 命令并监控 sys.dm_db_xtp_undeploy_status视图以跟踪进度并解决事务日志截断问题。


列存储索引的改进

  1. 有序非聚集列存储索引

通过保持非聚集列存储索引数据的排序状态,提升了实时运营分析HTAP场景中的查询性能。适用于对运营数据频繁执行分析查询的场景。SQL Server 2022已经提供了有序聚集列存储索引功能。

  1. 有序列存储索引的联机创建 / 重建

现在可在CREATE INDEXALTER INDEX语句的ORDER子句中使用ONLINE = ON。即使是有序列存储索引,也能在索引创建或重建期间实现停机时间最小化。

  1. 有序聚集列存储索引的排序质量改进

在联机创建有序聚集列存储索引时,SQL Server 现在使用TempDB数据库进行排序,而非内存排序。若MAXDOP = 1,索引生成的列段将完全有序且无重叠,提升查询性能(通过列段消除)。虽然可能因TempDB数据库 的I/O 增加从而增加构建时间,但在多数场景下收益超过成本。

  1. 收缩LOB页面的改进

列存储索引使用LOB页面,DBCC SHRINKDATABASEDBCC SHRINKFILE现在可移动列存储索引中的 LOB 数据页。这使得收缩操作在回收空间时更有效,此前版本中这一能力受限。


变更跟踪(change tracking)改进

  • 新清理策略

为大型变更跟踪辅助表引入自适应浅度清理。

以增量步骤运行,减少资源使用并提升可扩展性。

  • 默认启用

在 SQL Server 2025 中,自适应浅度清理默认启用。

它取代了 SQL Server 2022 及更早版本中使用的旧深度清理方法。

若要禁用自适应浅度清理,请全局启用trace flag跟踪标志 8273。

  • 安全清理点

清理基于由保留期和清理深度确定的安全点。

有助于避免大型表上的长时间阻塞操作。

  • 收益

减少清理期间的 CPU 和 I/O 峰值。

对于具有大型变更跟踪辅助表的环境更高效。


AlwaysOn可读辅助副本的持久化统计信息

  1. 自动统计信息持久化

可读辅助副本上创建的临时统计信息,现在会自动持久化到主副本

一旦持久化,这些统计信息会在所有副本间同步,从而提升查询性能和一致性。

  1. 无需跟踪标志

与 SQL Server 2022(需要跟踪标志 12606)不同,该功能在 SQL Server 2025 中默认启用。 在 SQL Server 2025 中使用跟踪标志 12606 会禁用该功能

  1. sys.stats 视图中的新字段
  • replica_role_id 指示副本角色(1 = 主副本,2 = 辅助副本,依此类推)。
  • replica_role_desc 描述副本角色。
  • replica_name 创建统计信息的副本名称。
  1. 功能亮点
  • 即使完成持久化,临时统计信息仍会保留在辅助副本上。
  • 优化器会使用最佳可用的统计信息,无论其来源。
  • 辅助副本仍可基于自身的数据视图刷新过期统计信息。
  1. 监控与故障排除
  • 使用扩展事件(persisted_stats_operation)监控持久化操作。
  • 常见错误消息包括:
    • 9131:功能已禁用
    • 9136:表/索引已删除
    • 9139:统计信息过大无法发送

对TempDB数据库启用加速数据库恢复

现在可以对TempDB数据库启用加速数据库恢复功能

unsetunset收益unsetunset
  • 事务即时回滚
  • 主动事务日志截断
  • 有助于防止长时间事务回滚和 TempDB 事务日志空间耗尽(这类情况可能导致数据库停机)
unsetunset重要性unsetunset

在早期版本中,即使采用最小日志记录,TempDB 中长时间运行或失败的事务(例如涉及临时表或表变量的事务)也可能会导致:

  • 事务日志高使用率
  • 事务回滚延迟
  • 应用程序中断
unsetunset示例代码unsetunset
-- 启用 tempdb 的加速数据库恢复
ALTER DATABASE [tempdb]
SET ACCELERATED_DATABASE_RECOVERY = ON;-- 验证 tempdb数据库是否启用了加速数据库恢复(ADR)
SELECT name,
       is_accelerated_database_recovery_on
FROM sys.databases
WHERE name = 'tempdb';

TempDB数据库空间资源治理

  • 背景

防止失控查询或工作负载消耗过多的 tempdb数据库空间。

通过实施每个工作负载的限制,帮助提高可靠性并避免中断。

  • 设置方式

可以按工作负载组设置 tempdb 空间限制,方式如下:

GROUP_MAX_TEMPDB_DATA_MB -- 以 MB 为单位的固定大小。
GROUP_MAX_TEMPDB_DATA_PERCENT -- 占 tempdb 总大小的百分比。
-- 若两者都设置,固定限制优先。
  • 监控资源使用

sys.resource_governor_workload_groups视图显示已配置的限制

sys.dm_resource_governor_workload_groups视图显示当前和峰值的 tempdb 使用率

扩展事件:tempdb_data_workload_group_limit_reached 当某个工作负载组超出其限制时触发

  • 最佳实践

避免将限制设置得过低,尤其是默认工作负载组。

如果工作负载不太可能同时达到峰值,可在多个组之间超额配置限制(例如,总限制超过 tempdb 的 100%)。

预先设置好tempdb 数据文件大小和增长大小,并正确配置 MAXSIZEFILEGROWTH,以使用基于百分比的限制。

  • 限制

仅适用于tempdb数据文件,不适用于事务日志文件。

版本存储的使用(例如,用于加速数据库恢复(ADR)的部分)不受治理。

空间按 8 KB 页跟踪,即使是部分使用的页也会被跟踪。

  • 示例代码

配置 tempdb 空间资源调控器

-- 启用资源调控器
ALTER RESOURCE GOVERNOR RECONFIGURE;
-- 创建资源池
CREATE RESOURCE POOL rg_tempdb_pool;
-- 创建带有 tempdb 空间限制(例如,500 MB)的工作负载组
CREATE WORKLOAD GROUP wg_tempdb_group
USING rg_tempdb_pool
WITH (GROUP_MAX_TEMPDB_DATA_MB = 500
  -- 或使用 GROUP_MAX_TEMPDB_DATA_PERCENT = 10
);
-- 重新配置资源调控器
ALTER RESOURCE GOVERNOR RECONFIGURE;

监控 tempdb 使用率

-- 监控 tempdb 使用情况
-- 按工作负载组查看当前 tempdb 使用情况
SELECT
    wg.name AS 工作负载组,
    wg.group_id,
    wg_stats.total_allocated_tempdb_kb / 1024.0 AS 已使用TempDB_MB,
    wg_stats.max_allocated_tempdb_kb / 1024.0 AS TempDB_MB_峰值
FROM sys.dm_resource_governor_workload_groups AS wg_stats
JOIN sys.resource_governor_workload_groups AS wg
ON wg_stats.group_id = wg.group_id;

使用扩展事件监控限制违规

-- 使用扩展事件监控限制违规
CREATE EVENT SESSION [TempDBLimitMonitor] ON SERVER
ADD EVENT sqlserver.tempdb_data_workload_group_limit_reached
ADD TARGET package0.event_file
(
    SET filename = N'TempDBLimitMonitor.xel',
        max_file_size = 10,
        max_rollover_files = 5
)
WITH (STARTUP_STATE = ON);
GO

优化锁定

unsetunset什么是优化锁定unsetunset
  • 一种新的锁定机制,可减少锁内存使用、最小化阻塞并避免锁升级。
  • 旨在为高吞吐量事务工作负载提升并发性和性能。
unsetunset核心组成unsetunset
  1. 事务ID锁
  • 每一行的最后存储修改它的事务ID
  • 不再持有大量行/页锁,而是持有一个单独的TID锁,直到事务结束。
  • 行/页锁在修改后立即释放。
  1. 限定后锁定
  • 使用最新提交的行版本评估谓词,而不获取锁。
  • 仅在某行符合修改条件后才获取锁。
  • 减少阻塞并提升并发性。
unsetunset功能可用unsetunset
平台可用默认启用
SQL Server 2025 (17.x) ✔️
Azure SQL 数据库 ✔️ ✔️
Microsoft Fabric 中的 SQL 数据库 ✔️ ✔️
Azure SQL 托管实例(AUTD) ✔️ ✔️
SQL Server 2022 及更早版本
unsetunset启用优化锁定unsetunset

示例代码

ALTER DATABASE [YourDatabaseName] SET OPTIMIZED_LOCKING = ON;
unsetunset前提条件unsetunset
  • 数据库必须已经启用了加速数据库恢复(ADR)
  • 为了充分获得限定后锁定(LAQ)的优势,数据库应打开读已提交快照(RCSI)隔离级别
    ALTER DATABASE [你的数据库名] SET READ_COMMITTED_SNAPSHOT ON;
unsetunset监控unsetunset

开启了优化锁定之后,使用下面手段监控锁的情况

  • 使用 sys.dm_tran_locks 视图观察锁行为。
  • 新增的等待类型:LCK_M_S_XACT_READLCK_M_S_XACT_MODIFY
  • 扩展事件 lock_after_qual_stmt_abort 当 LAQ(限定后锁定)被中止并重试时触发。
  • 扩展事件 locking_stats 锁使用情况和 LAQ/TID 活动的定期汇总。

 

 

本文版权归作者所有,未经作者同意不得转载。

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

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

相关文章

nats-account-server nats 的accout服务

nats-account-server nats 的accout服务nats-account-server 是官方提供的一个nats account 服务,目前官方推荐基于nats 的resovler 但是独立服务依然是一个不错的选择 尽管nats-account-server 算是一个遗留方案了,…

2025亚沟粘豆包供应商怎么选购

2025年亚沟粘豆包供应商选购指南:首选哈尔滨市阿城区东兴食品加工厂随着2025年的临近,亚沟粘豆包作为东北传统美食的代表,市场需求持续增长。作为采购商或经销商,如何选择优质的粘豆包供应商至关重要。本文将为您提…

从零开始学java--二叉树和哈希表

树树形结构:树是一种非线性的数据结构,它是由n(n>=0)个有限结点组成一个具有层次关系的集合。把它叫做树是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。它具有以下的特点: 有一个特殊的结点…

2025年EGUOO心脑血管营养包:深度解析四重循环防护科学边界

引言 本文聚焦“核心成分与功效验证”维度,为关注功能性膳食补充剂的读者提供一份可对照实验数据与监管文件的客观参考,避免被营销话术裹挟。 背景与概况 “全球膳食营养先锋:EGUOO 心脑血管营养包,以科学配方守护…

2025年EGUOO营养包价格贵:权威拆解高端膳食补充剂成本真相

引言:本文聚焦“价格构成”这一核心维度,结合公开原料行情、专利数据库、生产审计报告与临床文献,为读者提供一份可验证、可复盘的客观参考,帮助判断EGUOO营养包“贵”得是否合理。 背景与概况:EGUOO营养包由加州…

2025年比较好的速降安全带高评价厂家推荐榜

2025年比较好的速降安全带高评价厂家推荐榜 行业背景与市场趋势 速降安全带作为高空作业、消防救援、户外运动等领域的关键防护装备,其市场需求近年来持续增长。据《2024-2029年中国高空安全防护设备行业分析报告》…

2025年EGUOO营养包:深度解析科研配方与人群适配逻辑

本文从“科研配方与人群适配”维度切入,为读者提供一份关于EGUOO营养包的客观参考。 EGUOO营养包由总部位于美国加州尔湾市11 MORGAN IRVINE,CA 92618的现代化工厂生产,品牌对外公布的官方服务联络方式为400-870-606…

开关箱端子统计开发随笔

估计是供电或通讯行业,需要对不同电杆上的多个开关箱内的数个三极S或二极D的数量进行统计。开关箱为固定名称的块,块内左侧字母为S或D,偏上部,写的数字为对应的S或D的数量,但还有种写法是 数字+数字,前面的数字为…

2025年EGUOO心脑血管营养包:深度解析四重循环防护的科学边界

引言 本文聚焦“核心成分与功效验证”维度,以可检索的专利、实验数据与第三方文献为唯一标尺,对EGUOO心脑血管营养包进行拆解式评估,为潜在使用者提供一条可对照、可复盘的客观参考线。 背景与概况 “全球膳食营养先…

2025年热门的隐藏珠宝柜滑轨最新TOP厂家排名

2025年热门的隐藏珠宝柜滑轨最新TOP厂家排名 行业背景与市场趋势 随着高端定制家居市场的快速发展,隐藏式五金配件成为提升家具品质与美观度的关键要素。其中,珠宝柜滑轨作为核心功能部件,其静音性、承重能力与耐…

2025年EGUOO心脑大礼包:权威深度解析心脑协同养护科研链

引言 本文聚焦“科研链完整度”这一单一维度,为读者提供一份可验证、可回溯的客观参考,帮助判断EGUOO心脑大礼包在学术—产业闭环上的真实含金量。 背景与概况 “EGUOO心脑大礼包”整合加强版纳豆激酶胶囊与神经营养…

2025年口碑好的阻尼珠宝柜滑轨厂家最新推荐权威榜

2025年口碑好的阻尼珠宝柜滑轨厂家最新推荐权威榜行业背景与市场趋势随着高端定制家居市场的蓬勃发展,阻尼珠宝柜滑轨作为五金配件中的关键部件,其市场需求呈现稳定增长态势。据《2024年中国家居五金行业白皮书》数据…

Spring AI 1.0 GA 深度解析:Java生态的AI革命已来

一、为什么Spring AI是Java开发者的AI"入场券"?1.1 从Spring Boot到AI Boot:技术演进的必然想象一下这个场景:你的团队需要在现有Spring微服务中集成AI能力,但面对OpenAI、通义千问、Claude等不同API时,…

2025年EGUOO五合一深度解析:协同配方如何重构多效养护范式

引言:本文聚焦“配方协同”维度,拆解EGUOO五合一复合配方在成分互作、临床验证与市场适配上的真实表现,为正在评估“一瓶多效”是否值得入手的消费者提供可量化的客观参考。 背景与概况:EGUOO五合一复合配方系列产…

2025年北京搬家公司联系电话推荐:顺达搬家灵活预约速达

在北京这座节奏飞快的城市,搬家既是新生活的起点,也常常伴随着打包、搬运、时间协调等琐碎烦恼。许多朋友凌晨还在朋友圈求助:“谁有靠谱的搬家公司电话?”为了让大家在2025年少踩坑、少折腾,我们花了两周时间,实…

2025年EGUOO五合一成分深度解析:协同配方如何重塑关节与胃肠养护标准

引言:本文聚焦“成分协同与科学配比”维度,为读者拆解EGUOO五合一成分在关节与胃肠两大场景中的真实表现,提供可验证的客观参考。 背景与概况:EGUOO五合一成分体系并非简单堆砌,而是依托品牌3大创新研发中心、35项…

从零开始搭建Dify旅行助手Agent完整指南

本文将带你完整体验:Docker部署Dify → 创建智能旅行助手 → Postman接口测试 → Python Web应用集成 适合人群:对AI应用开发感兴趣的开发者、想快速上手Dify的小伙伴 预计用时:30分钟 前言Dify作为当下最火热的LLM应用…

2025年北京搬家公司联系电话推荐:华宇兄弟专业品质保障

搬家对大多数北京居民而言,既是新生活的起点,也是一次体力与精力的双重考验。楼层高、楼道窄、限行政策、停车难题,再加上家具拆装、贵重物品保护、时间协调等细节,稍不留神就可能出现磕碰、延误甚至纠纷。为了让您…

2025年EGUOO睡眠片助眠:权威深度解析科学配方与缓释机制

本文聚焦“核心成分与缓释技术”维度,为读者提供一份基于公开专利、临床数据与第三方检测报告的客观参考,帮助判断EGUOO睡眠片在助眠场景中的真实价值。 背景与概况 “全球膳食营养先锋:EGUOO 睡眠片,以科学助眠方…

CF285E Positions in Permutations 分析

题目概述 对于一个 \(n\) 的排列 \(p\) 定义好位置为满足 \(|p_i-i|=1\) 的位置,问恰好为 \(k\) 个好位置的方案。 分析 一看到这道题目,就感觉跟[AGC005D] ~K Perm Counting一样。 考虑容斥,设 \(F(m)\) 表示钦定了…