还原数据库并将它绑定到资源池

适用于:SQL Server (所有受支持的版本)

即使有足够的内存来还原带有内存优化表的数据库,也想要采用最佳做法,将数据库绑定到命名资源池。 因为数据库在绑定到池之前必须存在,所以还原数据库这个过程分为几个步骤。 本主题将演练这一过程。

还原带有内存优化表的数据库

以下步骤将完全还原数据库 IMOLTP_DB 并将其绑定到 Pool_IMOLTP。

  1. 使用 NORECOVERY 还原

  2. 创建资源池

  3. 绑定数据库和资源池

  4. 使用 RECOVERY 还原

  5. 监视资源池性能

使用 NORECOVERY 还原

还原数据库时 ,NORECOVERY 将创建数据库并在不使用内存的情况下还原磁盘映像。

RESTORE DATABASE IMOLTP_DB   
   FROM DISK = 'C:\IMOLTP_test\IMOLTP_DB.bak'  
   WITH NORECOVERY  

创建资源池

以下 Transact-SQL 创建一个名为Pool_IMOLTP的资源池,其中 50% 的内存可供其使用。 创建该池后,资源调控器重新配置为包括 Pool_IMOLTP。

CREATE RESOURCE POOL Pool_IMOLTP WITH (MAX_MEMORY_PERCENT = 50);  
ALTER RESOURCE GOVERNOR RECONFIGURE;  
GO  

绑定数据库和资源池

使用系统函数 sp_xtp_bind_db_resource_pool 将数据库绑定到资源池。 该函数使用两个参数:数据库名称,然后是资源池名称。

以下 Transact-SQL 定义数据库IMOLTP_DB到资源池Pool_IMOLTP的绑定。 完成下一步骤后,绑定才生效。

EXEC sp_xtp_bind_db_resource_pool 'IMOLTP_DB', 'Pool_IMOLTP'  
GO  

使用 RECOVERY 还原

使用 RECOVERY 还原数据库时,数据库将联机并还原所有数据。

RESTORE DATABASE IMOLTP_DB   
   WITH RECOVERY  

监视资源池性能

一旦数据库绑定到命名的资源池并使用 RECOVERY 还原,请监视 Resource Pool Stats 对象 SQL Server。 有关详细信息,请参阅 SQL Server, Resource Pool Stats 对象

另请参阅

数据库与资源池绑定的指南,请参阅主题
sys.sp_xtp_bind_db_resource_pool (Transact-SQL)
SQL Server,Resource Pool Stats 对象
sys.dm_resource_governor_resource_pools