錯誤訊息
無法開啟實體檔案 "XXXXXXXXXXXXX"。作業系統錯誤 5:"5(拒絕存取。)"。 (Microsoft SQL Server,錯誤: 5120)
原因分析
SQL Server 服務以 NetworkService 內建帳戶執行時,預設僅具備有限的網路存取權限,缺乏本機資料庫檔案目錄的讀寫權限,導致附加資料庫時無法開啟 .mdf/.ldf 檔案。
解決方法
- 開啟資料庫檔案所在資料夾的 內容 → 安全性 索引標籤
- 點選 編輯 → 新增
- 在「輸入物件名稱」輸入:
SQLServerMSSQLUser$<電腦名稱>$MSSQLSERVER
(若為具名執行個體,將 MSSQLSERVER 替換為執行個體名稱)
- 點選 檢查名稱 確認解析正確,按 確定
- 在權限清單中勾選該群組的 完全控制,務必勾選完全控制,唯讀或修改權限不足
- 點選 套用 → 確定 完成設定
驗證步驟
重新嘗試附加資料庫,錯誤 5120 應不再出現。若仍失敗,請檢查:
- 檔案是否被其他程式鎖定(如防毒軟體掃描)
- 檔案路徑是否包含特殊字元或過長(超過 260 字元)
- 磁碟空間是否充足
最佳實務建議
- 生產環境建議使用專屬網域服務帳戶,而非 NetworkService,便於權限管理與稽核
- 資料庫檔案建議放置於專用磁碟區,並為該磁碟區根目錄設定服務帳戶完全控制權限
- 定期稽核關鍵目錄權限,防止系統更新或群組原則重置導致權限遺失