请帮忙看一下这个数据库我为何附加不了(有错误提示说明)

来源:百度知道 编辑:UC知道 时间:2024/06/07 12:36:58
附加数据库对于服务器失败
其他信息
执行Transact-SQL语句或批处理时发生了异常
无法升级数据库'MyBook',因为他是只读的,或者具有只读文件。请将数据库或文件设为可写,然后重新运行恢复操作。
------------------------------------------------
以上是错误提示
我检查过2文件和所属文件夹的属性,确定它不是只读的,该如何解决?我刚接触sql,没什么头绪,所以只好求助大家了
一楼大哥能说一下更改登录账号的权限的具体步骤吗?

1、在SQL Server 2005 Express 上附加从另外一台电脑Copy过来的数据库后,数据库为“只读”。
2、解决办法:打开 开始→程序→Microsoft SQL Server 2005→配置工具→SQL Server 配置管理器, 打开SQL Server SQLEXPRESS 的属性. 在内置帐号处,把“网络服务”改成“本地系统”,重新启动SQL Server 2005 Express 后,再附加数据库一切正常。
3、总结:之所以附加上的数据库为“只读”,是因为启动SQL Server 的默认的启动帐号“网络服务”对所附加(Attach)的数据库文件的权限不够造成的。

---
以上,希望对你有所帮助。

发现并不是文件只读的问题,严格说应该是一个“权限”的问题,当前的 SQL Server 登录帐号没有对要附加文件的可写权限,就会出现上述“只读”的提示,解决办法有以下几种:

将要附加的文件拷贝到 SQL Server 默认的 Data 目录,此时附加就会成功;
在登录验证时,选择“Windows 身份验证”,而不是“SQL Server 身份验证”,即便你的登录帐号是 sa;
如果一定要使用“SQL Server 身份验证”,请更改登录帐号的权限使其对要附加文件有完全操作权限;
将 SQL Server 服务的帐户登录身份由 Network Service 改为 Local Service;
此问题是在 Windows XP 下发生的,顺带说一下,现在的 SQL Server 2008 企业版可以在 XP 下安装了。