首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

SQL Server 2012 附加資料庫錯誤 5120 解決方案兩則

     編輯:關於SqlServer

錯誤現象

SSMS 附加 .mdf 時彈出:SQL Server 錯誤 5120:無法開啟實體檔案... Access is denied。

錯誤 5120 截圖

方法一:切換帳號附加(最簡單)

  1. 使用 Windows 驗證登入 SSMS(需為本機管理員)。
  2. 附加資料庫成功後,右鍵資料庫 → 工作 → 分離。
  3. 再用 sa (SQL 驗證) 登入 SSMS 重新附加。

原理:Windows 管理員帳號擁有檔案系統完整權限,可繞過 NTFS 權限問題。

方法二:覆蓋法(終極大招)

  1. 在 SSMS 建立一個同名新資料庫(會產生新 .mdf/.ldf)。
  2. 停止 SQL Server 服務(服務管理器或 net stop MSSQLSERVER)。
  3. 用要附加的原始 .mdf/.ldf 覆蓋剛建立的檔案。
  4. 啟動 SQL Server 服務,資料庫即掛載成功。

原理:SQL Server 啟動時會自動掛載資料庫目錄下的檔案,繞過附加精靈的權限檢查。

預防建議

  • 資料庫檔案目錄授予 SQL Server 服務帳號 完全控制 權限。
  • 附加前先複製檔案到預設資料目錄(...\\MSSQL\\DATA),避免網路磁碟/唯讀目錄問題。
  • 使用 sp_attach_db / CREATE DATABASE ... FOR ATTACH T-SQL 指令附加,可避開 GUI 權限問題。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved