簡體   English   中英

將SQL Server 2008 R2數據庫文件移動到新文件夾位置

[英]Move SQL Server 2008 R2 database files to a new folder location

目前我有一個我希望在當前服務器上移動的數據庫列表。

數據:

當前路徑:Drive:\\ MSSQL \\ DATA \\ FOLDER

新路徑:驅動器:\\ MSSQL \\ DATA

日志:

當前路徑:驅動器:\\ MYSSQL \\ LOGS \\ FOLDER

新路徑:驅動器:\\ MYSSQL \\ LOGS

是否有可用於設置脫機多個數據庫的SQL腳本,將它們分離並將它們附加到新位置? 這也是一個生產環境,並且是相當大的數據庫(備份和恢復需要更長的時間)。 總共需要移動9個數據庫,這是一個簡單的過程,只要位置和用戶具有所需的權限? 感謝您的任何幫助。

這是一個簡單的過程,您也不需要分離數據庫來執行此操作,您可以執行以下操作:

  • 將db設置為脫機
  • 更改主數據庫中的文件位置(使用alter database)
  • 物理移動文件
  • 在線設置db

該過程在以下文章中描述:

移動用戶數據庫

只要用戶移動文件具有權限和服務帳戶,您運行SQL服務器就像完全控制新文件夾一樣,這很容易,而且我做了很多次。

一旦你完成了第一個數據庫的執行過程,對多個數據庫執行此操作也很簡單。

您可以使用此代碼更改路徑。 但您必須手動將文件移動到新位置。 WITH ROLLBACK IMMEDIATE通過斷開任何當前連接來加速離線過程。

ALTER DATABASE <db-name> SET OFFLINE WITH ROLLBACK IMMEDIATE;
ALTER DATABASE <db-name> MODIFY FILE ( NAME = <db-name>, FILENAME = <db-path\filename.mdf> );
ALTER DATABASE <db-name> SET ONLINE;

有關詳細信息,請查看相關的MSDN文章

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM