数据库常见错误

  • 格式:doc
  • 大小:181.00 KB
  • 文档页数:2

下载文档原格式

  / 4
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

常见数据库错误

1、附加数据库失败,错误5120

方法一:将要附加的文件拷贝到SQL Server默认的Data目录,即

C:\ProgramFiles\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA,此时附加就会成功。

方法二:在登陆验证时,选择“Windows身份验证”,而不是“SQL Server身份验证”。方法三:更改MDF和LDF文件设置为完全控制。

方法四:如果一定要使用"SQL Server身份验证",请更改登录帐号的权限,使其对要附加文件有完全操作权限,将SQL Server服务的账户登录身份有Network Service改为Local Service

2、数据库附加失败,错误950

附加数据库的版本是SQL Server2005的,如果使用的是SQL Server2012,SQL Server2012对于SQL Server2008是兼容的,但是不兼容SQL Server2005。

解决办法:将SQL Server2005的数据库用SQL Server2008附加一下,重新生成脚本,这样SQL Server2012就可以附加了。

3.数据库还原错误

解决思路:

删除连在上面的进程,回滚未提交的事务,然后还原。

步骤

1.查询要还原的数据库ID

Select * from master..sysdatabases where name = '';

2.获取该数据库的进程

Select * from sys.sysprocesses a where a.dbid = '';

3.杀掉连接在上面的进程

Kill @spid;

此时去还原一般就可以了。但是今天的问题比较麻烦一点,删完进程马上有新的进程连进来,导致一直失败。分析了下,是还有应用程序一直尝试连进来的。一开始想到的办法是暂时断掉与应用的网络,后来想到另一个更简单的办法,使用数据库的单用户模式。尝试了下,可以在单用户下还原。

设置方式:选中要还原的数据库-->属性-->选项-->限制访问

该值从MULTI_USER修改为SINGLE_USER,此时该数据库就会显示为单用户模式

这是GUI的模式,语句的办法比较简单

USE MASTER

GO

ALTER DATABASE eol_tcgroup SET SINGLE_USER WITH ROLLBACK IMMEDIATE;

GO

当然了,设置单用户数据库必须要超级用户