适用于:SQL Server
Azure SQL 数据库
Azure SQL 托管实例
Microsoft Fabric 中的 SQL 数据库
SQL Server 在内部使用此动态管理视图执行以下操作:
跟踪调试数据(例如,未完成的分配)。
假设或验证 SQL Server 组件在组件假定已进行特定调用的位置使用的逻辑。
| 列名称 | 数据类型 | Description |
|---|---|---|
| stack_address | varbinary(8) | 是该堆栈分配的唯一地址。 不可为 null。 |
| frame_index | int | 每行表示一个函数调用,当按特定 stack_address的帧索引按升序排序时,将返回完整的调用堆栈。 不可为 null。 |
| frame_address | varbinary(8) | 函数调用的地址。 不可为 null。 |
注解
sys.dm_os_stacks要求服务器上存在服务器和其他组件的符号才能正确显示信息。
Permissions
在 SQL Server 和 SQL 托管实例上,需要 VIEW SERVER STATE 权限。
在 SQL 数据库 基本、S0和 S1 服务目标上,对于 弹性池、服务器管理员 帐户、Microsoft entra 管理员 帐户或 ##MS_ServerStateReader##服务器角色 的成员身份。 在所有其他 SQL 数据库服务目标上,需要对数据库具有 VIEW DATABASE STATE 权限或 ##MS_ServerStateReader## 服务器角色的成员身份。
SQL Server 2022 及更高版本的权限
需要 VIEW 服务器上的 SERVER PERFORMANCE STATE 权限。