SQL Server 2008 附加数据库失败的解决办法

昨天在将一个 SQL Server 2000 数据库附加到 SQL Server 2008 时出现如下的错误:

附加数据库 对于 服务器“servername”失败。  (Microsoft.SqlServer.Smo)

无法升级数据库 ‘dbname’,因为它是只读的,或者具有只读文件。请将数据库或文件设为可写,然后重新运行恢复操作。 (Microsoft SQL Server,错误: 3415)

查看了数据库文件,他们并没有只读属性,在 SQL Server 2000 中附加都是一切正常的啊。点击错误消息对话框的帮助链接,打开的却是一个 I’m sorry 的无效链接,BS 一下微软。

多方研究,发现并不是文件只读的问题,严格说应该是一个“权限”的问题,当前的 SQL Server 登录帐号没有对要附加文件的可写权限,就会出现上述“只读”的提示,

解决办法有以下几种:

方法1: 将要附加的文件拷贝到 SQL Server 默认的 Data 目录,此时附加就会成功;
方法2: 在登录验证时,选择“Windows 身份验证”,而不是“SQL Server 身份验证”,即便你的登录帐号是 sa;
方法3: 如果一定要使用“SQL Server 身份验证”,请更改登录帐号的权限使其对要附加文件有完全操作权限;
          将 SQL Server 服务的帐户登录身份由 Network Service 改为 Local Service;

此问题是在 Windows XP 下发生的,顺带说一下,现在的 SQL Server 2008 企业版可以在 XP 下安装了。

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值