即使您有足夠的記憶體來還原含有記憶體最佳化資料表的資料庫,建議您還是依照最佳做法,將資料庫繫結至具名資源集區。 因為資料庫必須先存在,然後您才能將它繫結至集區,而且還原資料庫是一項具有多重步驟的程序。 本主題會逐步引導您完成該程序。
使用 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
監視資源集區效能
一旦資料庫繫結至具名的資源集區並使用復原進行還原,請監視 SQL Server、Resource Pool Stats 物件。 如需詳細資訊,請參閱< 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