SQLServer2008附加数据库错误(5123)的解决方法

作者: 来源:本站原创 点击数: 发布时间:2013年07月01日
问题描述:附加数据库的时候出现5123的错误代码,如图:
分析及解决方法:
一开始以为是SqlServer2008不兼容原来的数据库所致,在网上找了好大半天,都不行,一开始输出现得是5120错误,但是改了权限后出现了5123错误,这两种错误都是权限错误,并不是什么文件只读等等什么的。
因为这个数据库是不知道当时是那个版本创建的,在官方看了一下,解释说权限不对,应该把这个数据库放到SqlServer安装的目录下,也就是C:Program FilesMicrosoft SQL ServerMSSQL.1MSSQLData,果然解决问题;不过总不能每次都把数据库放到这个目录下啊!所以又寻找了其他的解决方案;
第一种解决方案:就是刚才的方法,把这个文件放到SqlServer默认位置下,不过最好不要放在C盘,万一那天重装系统,就玩完了,哈哈;
第二种解决方案:就是更改Sqlserver实列的默认数据库文件夹,选中Sqlserver实例,右击属性,在左边有个“数据库设置”,点开后,有个“数据库默认位置”,把这个设置成自己的目录就可以了。
第三种解决方案:就是更改这个数据库所在文件夹的权限,添加一个EveryOne的用户,设置成”full control”,就可以了,这个方案即直接又方便;
第四种:
按一下方式修改你的SQL的MDF和LDF属性就可以了,选择你的文件(两种文件均要修改为一样的权限)
MDF文件:文件右键>>属性>>安全>>编辑>>添加>>高级>>立即查找>>在搜索结果中选择:Authenticated Users>>确定>>确定>>确定>>MDF文件属性对话框>>在组或用户名列表框中选择:Authenticated Users>>高级>>更改权限>>编辑>>选中“安全控制”>>确定>>确定>>确定>>确定。OK这是MDF的权限就分配完成了!
LDF文件的权限和MDF文件的权限控制一样,按照上面的步骤进行就行了!
如果有其他的附加错误,应该也是权限的问题,只要修改文件的权限就行了,多试试就完事OK!