SQL Server附加数据库出错,错误代码5123

今天在附件一个以前的数据库(没有在SqlServer初始安装的目录下)的时候,老是附加不上,总是出现5123的错误代码,如图:

一开始以为是SqlServer2008不兼容原来的数据库所致,因为这个数据库是不知道当时是那个版本创建的,在官方看了一下,解释说权限不对,应该把这个数据库放到SqlServer安装的目录下,也就是X:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA,果然解决问题;不过总不能每次都把数据库放到这个目录下啊!所以又寻找了其他的解决方案;

第一种解决方案:就是刚才的方法,把这个文件放到SqlServer默认位置下,不过最好不要放在C盘,万一那天重装系统,就玩完了,哈哈;

第二种解决方案:就是更改Sqlserver实列的默认数据库文件夹,选中Sqlserver实例,右击属性,在左边有个“数据库设置”,点开后,有个“数据库默认位置”,把这个设置成自己的目录就可以了。

第三种解决方案:就是更改这个数据库所在文件夹的权限,添加一个EveryOne的用户,设置成”完全控制”权限,就可以了,这个方案即直接又方便;

我们的小编觉得,本地测试的话,推荐使用第三种,服务器上的话,还是要针对做一下权限设置。

(0)

相关推荐

  • SQL SERVER 2008 无法附加数据库的解决方法

    复制代码 代码如下: 标题: Microsoft SQL Server Management Studio ------------------------------ 无法为该请求检索数据. (Microsoft.SqlServer.Management.Sdk.Sfc) 有关帮助信息,请单击: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&LinkId=20476 --------------------------

  • mssql server .ldf和.mdf的文件附加数据库的sql语句

    附加数据库就可以完成. 附加数据库: 企业管理器      --右键"数据库"      --所有任务      --附加数据库      --选择你的.mdf文件名      --确定      --如果提示没有.ldf文件,是否创建,选择"是" 查询分析器中的方法:      --有数据文件及日志文件的情况      sp_attach_db   '数据库名'      ,'数据文件名(*.mdf注意要带目录)'   --后面可以是用,分隔的该数据库的多个数据文

  • Sqlserver 2005附加数据库时出错提示操作系统错误5(拒绝访问)错误5120的解决办法

    最近几天从网上找了几个asp.net的登录案例想要研究研究代码,结果在用Sql Server2005附加数据库文件时弹出错误信息: 看到网友回复说:只需给Authenticated Users赋所有权限就行了. 本人也遇到类似的问题,但是解决方法很简单,只需要使用管理员的身份打开SQL Server Management Studio,即可附加数据库了 如下图:  ,一时无解,遂求助于百度谷歌,经过各种试验,特将解决办法整理于此,希望能帮到大家,同时如果有好的意见大家多多交流啊! 方案一:切换登

  • SQLServer 附加数据库后出现只读或失败的解决方法

    解决此问题的几个关键点如下: 1.该现象只会出现在NTFS文件系统中. 2.由NTFS文件系统的访问权限导致. 一般手工操作的解决方案如下: 1.控制面板->文件夹选项->查看 关闭"使用简单文件共享(推荐)" 2.选择存放数据库文件的文件夹,右键选择属性,这时会多出一个"安全"选项卡,选择最后一个用户,将该用户的权限设为"完全控制". 经过这两步操作后,数据库附加失败或附加后只读的问题即可解决. 下面重点讲这两步,用C#代码的实现,

  • sql2008 附加数据库时出现错误5123提示的解决方法

    错误载图 解决方法: 1.直接把己有数据库复制到sql安装目录下C:/Program Files/Microsoft SQL Server/MSSQL10.MSSQLSERVER/MSSQL/DATA 这样就可以附加,不知道是不是在装数据库时漏选了什么操作,以前没遇到过. 2.在己有数据库mdf和ldf文件上, 右键---->属性---->添加---->高级---->立即查找---->Authenticated Users---->确定 ------>完全控制勾上

  • SQL Server 2005附加数据库时Read-Only错误的解决方案

    SQL Server 2005附加数据库文件时出现了Read-Only错误,附加的时候,系统提示mdf文件为只读,可是打开文件属性,这个属性不为只读.该怎么解决呢?本文我们就介绍了这一解决方案,接下来就让我们来一起了解一下吧. 两种解决方法如下: 1.重新打开数据库软件,在登录认证框那里选择:Windows authentication进行登录.然后再附加数据库,这时附加的就没有Read-Only了. 2.在*.mdf文件的属性里,找到"安全"页,然后把里面所有的"组或用户名

  • MSSQL2005在networkservice权限运行附加数据库报(Microsoft SQL Server,错误: 5120)

    附加数据库出错: 无法打开物理文件 "XXXXXXXXXXXXX".操作系统错误 5:"5(拒绝访问.)". (Microsoft SQL Server,错误: 5120) 解决方法:目录(即文件夹)权限不够,将SQLServer2005MSSQLUser$计算机名$MSSQLSERVER用户组加入,改为完全控制,注意一定要是完全控制才可以.

  • sql2005 附加数据库出错(错误号:5123)解决方法

    [错误提示]无法为此请求检索数据.(Microsoft.SqlServer.SmoEnum)其他信息执行Transact-Sql语句或批处理时发生了异常.(Microsoft.SqlServer.ConnectionInfo)尝试打开或创建物理文件"d:\Data\***.mdf"时,Create file遇到操作系统错误5(拒绝访问.) [问题背景]数据库版本:SQL Server 2005企业版操作系统版本:Windows Server 2003企业版错误引发描述:数据库分离后,把

  • sql server2012附加数据库问题解决方法

    SQLServer错误5120:先用widows用户登录附加再分离重新用sa附加就行了 不行的话,绝招: 你先用SQLServer创建一个新的数据库,然后用你要附加的文件去覆盖掉创建的文件!覆盖之前,记得计算机-管理-服务-把SQL服务关掉

  • SQL Server附加数据库出错,错误代码5123

    今天在附件一个以前的数据库(没有在SqlServer初始安装的目录下)的时候,老是附加不上,总是出现5123的错误代码,如图: 一开始以为是SqlServer2008不兼容原来的数据库所致,因为这个数据库是不知道当时是那个版本创建的,在官方看了一下,解释说权限不对,应该把这个数据库放到SqlServer安装的目录下,也就是X:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA,果然解决问题:不过总不能每次都把数据库

  • SQL Server附加数据库时出现错误的处理方法

    目录 前言 一.如何附加数据库? 二.无法升级数据库,出现(539类似版本号不匹配)错误解决办法 1.常见的无法附加数据库时,出现的错误 2.无法升级数据库的解决办法 总结 前言 SQL Server 是数据库软件中比较常见且实用的软件,它的集成度很高,且功能非常强大.很多类型的网站系统后台数据库都依赖于SQL Server.但是,对于初学者而言,在操作过程中总是会出现各种各样的错误.现在,我对“无法升级数据库”这种报错信息,做详细处理流程的讲解. 一.如何附加数据库? 1.选择要添加的数据库文

  • SQL Server附加数据库报错无法打开物理文件,操作系统错误5的图文解决教程

    问题描述: 附加数据时,提示无法打开物理文件,操作系统错误5.如下图: 问题原因:可能是文件访问权限方面的问题. 解决方案:找到数据库的mdf和ldf文件,赋予权限即可.如下图: 找到mdf和ldf文件,本演示以ldf为例. 1.点击文件右键属性-->安全-->编辑 2.编辑-->添加 3.添加-->高级 4.高级-->立即查找-->搜索结果中找到-->Everyone-->确定-->确定 5.确定-->默认选中的Everyone用户-->

  • 通过SQL Server 2008数据库复制实现数据库同步备份

    SQL Server 2008数据库复制是通过发布/订阅的机制进行多台服务器之间的数据同步,我们把它用于数据库的同步备份.这里的同步备份指的是备份服务器与主服务器进行实时数据同步,正常情况下只使用主数据库服务器,备份服务器只在主服务器出现故障时投入使用.它是一种优于文件备份的数据库备份解决方案. 在选择数据库同步备份解决方案时,我们评估了两种方式:SQL Server 2008的数据库镜像和SQL Server 2008数据库复制.数据库镜像的优点是系统能自动发现主服务器故障,并且自动切换至镜像

  • SQL Server备份数据库的完整步骤

    目录 一.首先把当前的数据库备份成一个文件 1.按照操作来,选择对应的数据库, 2.然后可以通过该备份文件还原数据库. 二.第二种方法复制数据库 1.右键数据库的属性 2.右键数据库点击任务,分离. 总结 一.首先把当前的数据库备份成一个文件 1.按照操作来,选择对应的数据库, 确定备份文件的存储位置 点击确定,生成备份文件. 2.然后可以通过该备份文件还原数据库. 右键数据库点击还原文件和文件组 然后设置目标数据库的名字,如果数据库中已经存在相同名字的,则需要修改或者删除原来同名的数据库,然后

  • sql server 2008 数据库管理系统使用SQL语句创建登录用户步骤详解

    废话不多说了,直接给大家贴代码了,具体代码如下所示: --服务器角色: --固定服务器角色具有一组固定的权限,并且适用于整个服务器范围. 它们专门用于管理 SQL Server,且不能更改分配给它们的权限. --可以在数据库中不存在用户帐户的情况下向固定服务器角色分配登录. --按照从最低级别的角色(bulkadmin)到最高级别的角色(sysadmin)的顺序进行描述: --1.Bulkadmin:这个服务器角色的成员可以运行BULKINSERT语句.这条语句允许从文本文件中将数据导入到SQL

  • SQL Server 2008数据库误删数据如何进行数据恢复

    有个朋友很着急地打电话给我,他用delete语句误删除了SQL Server 2008数据库中两个表中的所有记录,而这个数据库之前没有任何备份.让我帮他解决一下,不然他要赔偿客户很多钱. SQL Server中误删除数据的恢复本来不是件难事,从事务日志恢复即可.但是,这个恢复需要有两个前提条件: 1. 至少有一个误删除之前的数据库完全备份. 2. 数据库的恢复模式(Recovery mode)是"完整(Full)". 针对这两个前提条件,会有三种情况: 情况一.如果这两个前提条件都存在

  • 更改SQL Server 2005数据库中tempdb位置的方法

    了解SQL Server 2005数据库的朋友可能都知道,tempdb系统数据库是一个全局资源,可供连接到SQL Server 2005实例的所有用户使用.我们有时候为了操作方便,常常会更改一下tempdb数据库的位置,那么该如何操作呢?本文我们就来介绍这一更改的过程. 获得tempdb的原始位置: select [name],[physical_name] from sys.master_files where database_id=db_id(N'tempdb') 更改tempdb数据库位

  • 简述SQL Server 2005数据库镜像相关知识

    SQL Server 数据库中,数据库镜像是用于提高数据库可用性的主要软件解决方案.数据库镜像基于每个数据库实现,并且只适用于使用完整恢复模式的数据库.简单恢复模式和大容量日志恢复模式不支持数据库镜像,数据库镜像不能镜像master.msdb.tempdb 或 model 数据库.本文我们主要就介绍一下数据库镜像的相关知识,接在来就让我们来一起了解一下吧! 数据库镜像维护一个数据库的两个副本,这两个副本必须驻留在不同的SQL Server 数据库引擎实例(服务器实例)上.通常,这些服务器实例驻留

  • SQL Server 2008 数据库镜像部署实例之三 配置见证服务器

    前面已经完成了镜像数据库的配置,并进行那个了故障转移测试.接下来将部署见证服务器,实现自动故障转移. 一.关于见证服务器 1.若要支持自动故障转移,必须在高安全性模式下配置数据库镜像会话,并且还要具有第三个服务器实例(也称为"见证服务器").见证服务器是 SQL Server 的可选实例,它能使高安全性模式会话中的镜像服务器识别出是否要启动自动故障转移.与这两个伙伴不同的是,见证服务器并不能用于数据库.见证服务器的唯一角色是支持自动故障转移. 2.为了给数据库设置见证服务器,数据库所有

随机推荐