Win7 64位 + SQL 2008 R2下Attach Database的一个错误:Operating system error 5

来源:http://www.cuiwenyuan.com/shanghai/post/Operating-system-error-5-5failed-to-retrieve-text-for-this-error-Reason-15105-Microsoft-SQL-Server-Error-5120.html

前几日趁着吉日嘎拉搞活动,升级了以前购买的程序到个人开发版,拿到SVN并下载源码后直到昨天才有空研究和学习这套权限管理系统及C#快速开发平台。没想到Attach数据库的时候出现如下错误:
Win7 64位 + SQL 2008 R2下Attach Database的一个错误:Operating system error 5_第2张图片

Operating system error 5: "5(failed to retrieve text for this error. Reason: 15105)". (Microsoft SQL Server, Error: 5120)

我搜索了一下错误号码,找到如下解决方案,并照做了,但又出现新的错误如下图。

解决办法: 1、打开该数据库文件的属性窗口,选择“属性”菜单->选择“安全”标签->选择“编辑”按钮。 2、在选择组或用户名列表中,选择Authenticated Users,在权限列表中选中完全控制。 3、选择"确定"按钮关闭对话框。

Win7 64位 + SQL 2008 R2下Attach Database的一个错误:Operating system error 5_第3张图片

The file “E:\VS\DotNet.Jirigala.Dev\DotNet.DataBase\SQL2008\MessageCenteV39.mdf” is compressed but does not reside in a read-only database or filegroup. The file must be decompressed.

继续搜索引擎,原来是NTFS启用文件压缩的问题(估计Jirigala的笔记本没启用这个功能),选择整个文件夹取消文件压缩,再来Attach,终于成功。
Win7 64位 + SQL 2008 R2下Attach Database的一个错误:Operating system error 5_第1张图片
总结下来,在部署数据库的mdf文件时有两点需要注意:
1、认证用户对数据库文件的操作权限 2、数据库文件的发布者(创建者)是否启用过文件压缩

你可能感兴趣的:(Win7 64位 + SQL 2008 R2下Attach Database的一个错误:Operating system error 5)