#推荐
SQL Server 附加数据库报错 5123 的原因与完整解决办法

2025-07-16 14

有些朋友在 SQL Server Management Studio(SSMS)里想附加 .mdf 数据库文件时,一点就弹一个红色叉叉,提示:

尝试打开或创建物理文件时,CREATE FILE 遇到操作系统错误 5(拒绝访问)。
(Microsoft SQL Server,错误: 5123)

这个报错常见于老系统或者把数据库放在 D 盘、E 盘的 NTFS 分区。原因很简单:数据库文件所在目录的权限设置跟当前登录的 SQL Server 服务账户对不上,操作系统直接拦住了。

5123 错误提示示例

SQL Server 附加数据库报错 5123 的原因与完整解决办法

为什么会这样?

很多人平时装完 SQL Server 就直接用,默认的服务账户一般是 Network Service 或者 MSSQLSERVER,它不是管理员,所以它只能访问它有权限的目录。
一旦你把 .mdf 文件放到自定义的 D:\EWIN\数据库\ 这种路径,就容易出问题。特别是有些系统对 D 盘设置了访问限制,或者是别人拷给你的 MDF,权限跟随原电脑的。

正确做法:给文件放行

这个错误根本不需要重装数据库,也别把数据库随便扔 C 盘冒风险,只需要把 .mdf 文件或整个文件夹加上 Everyone 权限即可。

具体步骤如下:

  1. 找到 .mdf 文件,右键 → 属性 → 安全 → 编辑。

  2. 点击【添加】,输入 Everyone → 确定。

  3. 在权限栏勾选所有“允许”选项,包括读取、写入、完全控制等。

MDF 文件设置 Everyone 权限示例

SQL Server 附加数据库报错 5123 的原因与完整解决办法

  1. 如果只改文件还报错,就对文件夹做一遍相同的操作,让子文件继承权限。这样不管后续新生成的 LDF(日志文件)还是其他临时文件,SQL Server 都能正常读写。

经验小贴士

做完以上步骤,别忘了重启一下 SQL Server 服务再重新附加,有些老版本 SQL 有缓存,要么也可以把 SQL Server 以管理员身份运行试试。有时候就是一个小权限卡死整套流程,搞半天不值。

总结

5123 错误 99% 就是权限不足,改 Everyone 权限最直接。以后数据库要移动,也最好把权限设置带上,不然换机器或换盘符还得重来一次。

相关文章:

Mac系统MySQL数据库管理必备工具:Navicat for MySQL 17.1.9 中文版
作为技术圈内经常和数据库打交道的朋友,选一款优秀的数据库管理工具至关重要。Navicat for MySQL就是专为Mac用户打造的数据库管理神器...
SQL Server 数据库查询脚本 – 查找特定数据
在 SQL Server 中,有时我们需要查找某个特定值在哪个表、哪个列里出现过,比如查找某个关键字、某个用户ID,或者某个网址。这时候,...
SQL 语句查询工具 V3.0 – 轻量级 Access 数据库查询助手
在数据库开发和调试过程中,很多时候需要测试 SQL 语句的正确性,特别是在 Access 数据库 或 VBA 开发 场景下。SQL 语句查询...

收藏 打赏

感谢您的支持,我会继续努力的!

打开USDT(trc-20)扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

Ts:本站所有内容均为互联网收集整理和网友上传。仅限于学习研究,请必须在24小时内删除。否则由此引发的法律纠纷及连带责任本站概不承担。

如侵犯到您的合法权益,请联系我们删除侵权资源!

韩仔技术 自学开发 SQL Server 附加数据库报错 5123 的原因与完整解决办法 https://www.hanzijs.com/zixue/7028.html

相关文章

发表评论
暂无评论