前言
默認(rèn)情況下SQL SERVER的安裝路徑與數(shù)據(jù)庫的默認(rèn)存放路徑是在C盤的--這就很尷尬。
平時(shí)又不注意,有天發(fā)現(xiàn)C盤的剩余空間比較吃緊了,于是著手想辦法遷移文件夾。
一、環(huán)境準(zhǔn)備
數(shù)據(jù)庫版本--SQL SERVER 2008R2
數(shù)據(jù)庫存放路徑:
原路徑:C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA
遷移后路徑:D:\SQLSERVER
.LDF文件:數(shù)據(jù)庫日志文件
.MDF文件:數(shù)據(jù)庫文件
登錄賬戶:
windwos身份驗(yàn)證:windwos本地賬戶,具有管理員權(quán)限
SQL SERVER身份驗(yàn)證:sa賬戶,具有管理員權(quán)限
二、設(shè)計(jì)思路
登錄SQL SERVER----先備份數(shù)據(jù)庫-----分離需要遷移的數(shù)據(jù)庫-----進(jìn)入數(shù)據(jù)庫的源路徑C盤---------------將數(shù)據(jù)庫兩個文件.ldf與.mdf剪切至其他磁盤中----再登錄SQL SERVER----附加數(shù)據(jù)庫
ps:登錄數(shù)據(jù)庫請使用windows身份驗(yàn)證,防止附加數(shù)據(jù)庫后數(shù)據(jù)庫變?yōu)橹蛔x權(quán)限
三、操作流程
1.登錄SQL SERVER,使用SSMS---widows身份驗(yàn)證,本地賬戶登錄

2.右鍵點(diǎn)擊一個數(shù)據(jù)庫-----任務(wù)------備份數(shù)據(jù)庫。避免突發(fā)情況,以防萬一!

3. 再次右鍵點(diǎn)擊一個數(shù)據(jù)庫-----任務(wù)------分離數(shù)據(jù)庫
勾選“刪除鏈接”-----勾選“更新統(tǒng)計(jì)信息”

4.分離后,進(jìn)入源路徑C盤,將兩個文件(.ldf與.mdf)剪切至D盤

5.再次登錄SQL SERVER,繼續(xù)使用windwos身份驗(yàn)證
(因?yàn)橛肧A用戶去附加數(shù)據(jù)庫的時(shí)候,會讓數(shù)據(jù)庫成為只讀狀態(tài),所以能用windwos身份驗(yàn)證就用本地賬戶,因?yàn)闄?quán)限的問題)

6.右鍵“數(shù)據(jù)庫”--“附加”
“添加”--選擇D盤剛才剪切過去的數(shù)據(jù)庫.mdf文件--確定


7.完成后刷新就可以查看數(shù)據(jù)庫文件位置變了,且權(quán)限,文件任何都完整的遷移過來

8.重復(fù)操作就可以把所有數(shù)據(jù)庫遷移至其他盤
四、如果出現(xiàn)數(shù)據(jù)庫為只讀狀態(tài)
因?yàn)檫w移的時(shí)候用的SA用戶,所以數(shù)據(jù)庫文件的權(quán)限變了,因此變?yōu)橹蛔x狀態(tài),所以剛才一再提醒用windwos本地用戶操作!
當(dāng)然也有解決辦法:
方案一:
碰到這中情況一般是使用的sa賬戶登錄的,只要改為Windows身份驗(yàn)證,再附加數(shù)據(jù)庫即可搞定。
方案二:
使用sa登錄SQL Server2008附加數(shù)據(jù)庫,附加之后數(shù)據(jù)庫為只讀的,然后點(diǎn)數(shù)據(jù)庫-->“屬性”-->“選項(xiàng)”-->“狀態(tài)”,發(fā)現(xiàn)“數(shù)據(jù)庫為只讀”這一項(xiàng)為True,改為false。
當(dāng)然,大部分情況下不會成功。會繼續(xù)報(bào)錯下圖。

這種情況下,找到你的數(shù)據(jù)文件和日志文件,右擊“屬性”-->“安全”,添加一個“Network Service”賬戶,然后賦予該賬戶完全控制的權(quán)限即可。
再次使用sa登錄,附加數(shù)據(jù)庫或者再次將“只讀”狀態(tài)修改即可。
總結(jié)
到此這篇關(guān)于SQL SERVER遷移之更換磁盤文件夾的文章就介紹到這了,更多相關(guān)SQL SERVER更換磁盤文件夾內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- 將ACCESS數(shù)據(jù)庫遷移到SQLSERVER數(shù)據(jù)庫兩種方法(圖文詳解)
- 如何把sqlserver數(shù)據(jù)遷移到mysql數(shù)據(jù)庫及需要注意事項(xiàng)
- 如何將Oracle的一個大數(shù)據(jù)表快速遷移到 Sqlserver2008數(shù)據(jù)庫(圖文教程)
- sqlserver數(shù)據(jù)庫遷移后,孤立賬號解決辦法