sys.sp_xtp_unbind_db_resource_pool (Transact-SQL)

适用范围:SQL Server

此系统过程删除数据库和资源池之间的现有绑定,以便跟踪内存中 OLTP 内存使用情况。 如果没有当前绑定到指定数据库的池,则返回成功。 若数据库未绑定,则之前为内存优化对象分配的内存仍分配给上一个资源池。 您需要重新启动数据库才能释放分配的内存。 一旦数据库与资源池解除绑定,该绑定就会使用 DEFAULT 资源池。

Transact-SQL 语法约定

语法

sys.sp_xtp_unbind_db_resource_pool
    [ @database_name = ] 'database_name'
[ ; ]

参数

[ @database_name = ] 'database_name'

已启用内存中 OLTP 的现有数据库的名称。 @database_namesysname

消息

如果数据库绑定到命名资源池,该过程将成功返回。 但是,必须重新启动数据库才能取消绑定才能生效。

如果指定的数据库没有现有绑定, sp_xtp_unbind_db_resource_pool 则返回成功,但会提供信息性消息:

Msg 41374, Level 16, State 1, Procedure sp_xtp_unbind_db_resource_pool_internal, Line 140.
Database 'Hekaton_DB' does not have a binding to a resource pool.

示例

以下代码将数据库 Hekaton_DB 从它绑定到的内存中 OLTP 资源池中取消绑定。 如果 Hekaton_DB 当前未绑定到内存中 OLTP 资源池,则会提供一条消息。 必须重新启动该数据库,取消绑定才会生效。

sys.sp_xtp_unbind_db_resource_pool N'Hekaton_DB';

要求

  • 由@database_name指定的数据库必须具有对内存中 OLTP 资源池的绑定。

  • 需要 CONTROL SERVER 权限。