分享方式:


將保存的記錄緩衝區新增至資料庫

適用於:SQL Server

本主題描述如何使用 Transact-SQL,將保存的記錄緩衝區新增至 SQL Server 2019 (15.x) 和更新版本的資料庫。

權限

需要資料庫的 ALTER 權限。

設定持續性記憶體裝置 (Linux)

Linux 中設定持續性記憶體裝置。

設定持續性記憶體裝置 (Windows)

Windows 中設定持續性記憶體裝置。

將保存的的記錄緩衝區新增至資料庫

下列範例會移除保存的記錄緩衝區。

ALTER DATABASE <MyDB> 
  ADD LOG FILE 
  (
    NAME = <DAXlog>, 
    FILENAME = '<Filepath to DAX Log File>', 
    SIZE = 20MB
  );

例如:

ALTER DATABASE WideWorldImporters 
  ADD LOG FILE 
  (
    NAME = wwi_log2, 
    FILENAME = 'F:/SQLTLog/wwi_log2.pldf', 
    SIZE = 20MB
  );

不論使用 ADD FILE 命令指定的大小為何,DAX 磁碟區上的記錄檔的大小都為 20 MB。

放置新記錄檔的磁碟區或裝載必須進行格式化且啟用 DAX (NTFS),或使用 DAX 選項 (XFS/EXT4) 進行裝載。

移除保存的記錄緩衝區

若要安全地移除保存的記錄緩衝區,資料庫必須置於單一使用者模式中,才能清空保存的記錄緩衝區。

下列範例會移除保存的記錄緩衝區。

ALTER DATABASE <MyDB> SET SINGLE_USER;
ALTER DATABASE <MyDB> REMOVE FILE <DAXlog>;
ALTER DATABASE <MyDB> SET MULTI_USER;

例如:

ALTER DATABASE WideWorldImporters SET SINGLE_USER;
ALTER DATABASE WideWorldImporters REMOVE FILE wwi_log2;
ALTER DATABASE WideWorldImporters SET MULTI_USER;

限制

透明資料加密 (TDE) 與保存的記錄緩衝不相容。

可用性群組只能在次要複本上使用這項功能,因為記錄讀取器代理程式在主要複本上需要標準記錄寫入語意。 不過,必須在所有節點上建立小型記錄檔 (最好是在 DAX 磁碟區或裝載上)。 如果發生容錯移轉,保存的記錄緩衝路徑必須存在,才能成功進行容錯移轉。

如果在可用性群組容錯移轉事件或資料庫啟動期間,路徑或檔案不存在,資料庫會進入 RECOVERY PENDING 狀態,直到問題解決為止。

與其他 PMEM 功能的互通性

同時啟用保存的記錄緩衝區和混合式緩衝集區,以及啟動追蹤旗標 809 時,混合式緩衝集區將會以所謂的直接寫入模式運作。

備份與還原操作

套用一般還原條件。 如果保存的記錄緩衝區還原至 DAX 磁碟區或裝載,它會繼續運作,否則可以安全地移除。

下一步