SQLServer附加数据库时出错问题总结分析

作者:袖梨 2022-06-29

sql2008 附加数据库时出现错误5123提示

无法为此请求检索数据……执行Transact-SQL语句或批处理时发生异常……尝试打开或创建物理文件'd:dataejiaOA.mdf'时,createfile遇到系统错误 5(拒绝访问)。(Microsoft SQL Server,错误:5123)。


解决方法


1.直接把己有数据库复制到sql安装目录下C:/pg/msql/MSSQL10.MSSQLSERVER/mssql/DATA


2.在己有数据库mdf和ldf文件上,右键---->属性---->添加---->高级---->立即查找---->Authenticated Users---->确定 --->完全控制勾上---->确定

如果还不能解决我们可尝试

右击E盘,在属性里查看“安全”选项卡里查看用户的权限。查看启动帐户是谁,运行services.msc,在服务管理器里找到SQL Server服务,然后看“登录”选项卡,选中本地用户并重启服务。


Microsoft SQL Server,错误: 3415


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

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


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

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

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


SQL2008附加数据库 错误代号5120


出错原因:这个文件没有操作权限,所以附加的时候出错,只要给这个文件或文件夹的USERS用户为完全访问就可以了。
 

解决办法:

1.数据库文件图标上单击右键,选择“属性”菜单->选择“安全”标签->选择“编辑”按钮。

2.选择组或用户名列表中选择Authenticated Users,在权限列表中选中完全控制。

3.选择"确定"按钮关闭对话框。

相关文章

精彩推荐