Sql-Server-Express

SQL Server Express 2008:我可以將數據庫文件(.mdf、.ldf)儲存在預設 DATA 目錄以外的目錄中嗎?

  • March 7, 2014

我有一個 SQL Server Express 2008 實例,我經常從開發系統中附加數據庫。通常我將.MDF.LDF文件傳輸到實例的DATA文件夾並重新附加,一切都很好。過去,當我們使用 Access 而不是 SQL Server Express 時,我會將數據庫文件保存在單獨的驅動器 (SSD) 上,這往往會提高性能,同時讓我在整個 SSD 上使用 BitLocker 驅動器加密,以便於加密和整體驅動器備份。我想對 SQL Server Express 做同樣的事情。

我可以將.mdfand.ldf文件放在單獨的驅動器上(而不是在實例DATA文件夾中)而不會產生任何不良影響嗎?我是否需要通過 Management Studio 更改設置才能執行此操作?我還能使用 BitLocker 加密嗎?

非常感謝!

您可以將數據庫文件放置在您想要的任何位置,您只需在 SQL Server 本身中指定這些位置。有兩種方法可以重新定位這些文件。

在新位置創建

當您創建數據庫或將文件添加到數據庫時,您可以指定新位置,文件將在那裡創建。例如,如果我想向我的數據庫添加一個新的數據文件,我會執行以下操作

ALTER DATABASE [foo]
ADD FILE (name=foo_data_02, filename='X:\YourCustomLocation\foo_data_02.ndf');

只要您的 SQL Server 服務帳戶有權訪問該路徑,您在“文件名”之後放置的任何內容都將是您創建文件的位置。

移動到新位置

您還可以將現有數據文件移動到新位置。這需要幾個步驟。第一種是先在 SQL Server 中更改路徑,如下所示:

ALTER DATABASE [foo]
MODIFY FILE (name=foo_data_01, filename'X:\YourCustomLocation\foo_data_01.mdf`)

通過修改它,下次啟動此數據庫時,它將在該位置查找文件。更改後,您實際上需要移動文件。為此,請使數據庫離線:

ALTER DATABASE [foo]
SET OFFLINE WITH ROLLBACK IMMEDIATE;

數據庫離線後,使用您的首選方法將文件複製到新位置。複製完成後,將您的數據庫聯機:

ALTER DATABASE [foo]
SET ONLINE;

此時,您的數據庫現在將在新位置執行您的文件。

引用自:https://dba.stackexchange.com/questions/60126