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 下安装了。

时间: 2024-08-07 21:17:37

SQL Server 2008 附加数据库失败的解决办法的相关文章

SQl server 2008 附加数据库失败,错误:5120

通过附加功能添加现成的数据库是非常方便的,然而有时会出现附加数据库失败.那么,我们该如何解决此问题? 有两种解决方法 [第一种方法] 第一步:找到要添加数据库的.mdf文件,点击右键,选择属性. 第二步:在属性页面点击安全,选择Authenticated Users,单击编辑 第三步:Authenticated Users权限中选择完全控制,点击确定,点击属性界面的确定. 第四步:同理,右键点击数据库的.ldf文件,打开属性.按以上步骤再次设置即可. 完成以上步骤,再进行附加数据库,这时就可以.

SQL Server 2008附加数据库提示5120错误

SQL Server 2008附加数据库提示5120错误 打开该数据库文件的属性窗口,选择“属性”菜单->选择“安全”标签->选择“编辑”按钮. 在选择组或用户名列表中,选择Authenticated Users,在权限列表中选中完全控制. 选择"确定"按钮关闭对话框. 附加数据库,成功.

sql server 2000,Log.LDF文件丢失,附加数据库失败的解决办法[转]

SQL Server数据库备份有两种方式,一种是使用BACKUP DATABASE将数据库文件备份出去,另外一种就是直接拷贝数据库文件mdf和日志文件ldf的方式.下面将主要讨论一下后者的备份与恢复.本文假定您能熟练使用SQL Server Enterprise Manager(SQL Server企业管理器)和SQL Server Quwey Analyser(SQL Server查询分析器) 1.正常的备份.恢复方式 正常方式下,我们要备份一个数据库,首先要先将该数据库从运行的数据服务器中断

SQL Server2005/2008 作业执行失败的解决办法

数据库:SQL Server 2005/2008,运行环境:Windows Server 2008  在数据库里的所有作业都执行失败,包括自动执行和手动执行.在事件查看器里看到的错误报告如下: 该 作业失败.  无法确定所有者 AAA/Administrator (拥有作业 备份-AAA)是否有服务器访问权限 (原因: 无法获取有关 Windows NT 组/用户 'AAA/Administrator' 的信息,错误代码 0x534. [SQLSTATE 42000] (错误 15404)).

sql server 2008 评估期已过期解决办法

开始-->所有程序-->Microsoft SQL Server 2008-->配置工具-->SQL Server 安装中心 -->维护-->版本升级,接着按照提示一直点下一步,到产品密钥的时候输入 开发版: PTTFM-X467G-P7RH2-3Q6CG-4DMYB 企业版: JD8Y6-HQG69-P9H84-XDTPG-34MBB 如果以上操作后还提示评估期已过,修改注册表: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Micros

SQL Server 2010附加数据库失败:无法打开物理文件拒绝访问解决方法

这是由于权限问题导致的,解决方法有两种:一是将mdf和ldf文件移动到数据库数据目录(例如D:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA)再附加:二是修改MSSQLSERVER服务登录身份为本地系统帐户. 原文地址: http://www.mzwu.com/article.asp?id=3746

SQL Server 2008 忘记sa密码的解决办法

由于某些原因,sa和windows验证都不能登录 sql server,可以用独占模式,修改sa密码先在服务管理器停止Sql Server服务,然后打开命令行,进入 SQL Server安装目录,进入 Binn执行命令 sqlservr.exe -m启动完成后 再打开一个命令行窗口 输入命令 sqlcmd执行命令使sa账号可用ALTER LOGIN sa ENABLE;GO修改sa密码(UNLOCK 需要2008以上版本)ALTER LOGIN sa WITH password='新密码' UN

SQL Server 2008 master 数据库损坏解决总结

SQL Server 2008 master数据库损坏后,SQL SERVER服务启动失败,查看错误日志,你会看到下面错误信息: 2015-10-27 10:15:21.01 spid6s      Starting up database 'master'.   2015-10-27 10:15:23.01 spid6s      错误: 9003,严重性: 20,状态: 1.   2015-10-27 10:15:23.01 spid6s      The log scan number (

Sql Server 2008 R2数据库损坏修复成功

Sql Server 2008 R2数据库损坏修复成功案例 2016.4月 青岛某连锁店使用的SQL 2008R2数据库,客户在正常使用中突然服务器断电导致的损坏,再次附加发现数据库报错不能正常运行,客户那边管理员自己尝试了修复以及重建日志但是故障依旧,后来发现自己解决不了,通过百度搜索,联系到我们进行处理. 我们的工程师具体查看了一下,数据库大小600M左右,底层数据看了一下基本正常,先用工具检测看下页面损坏情况,如下图: 我们可以看到确实是有页面损坏,直接新建库替换重新生成日志在看损坏情况如