一、数据库异常

我们平时在使用SQL Server时,可能会遇到以下情况:

1、数据库变为置疑状态

2、使用数据库文件恢复数据库时,附加的数据库显示为置疑状态

3、无法附加数据库

数据库置疑的原因:

  1. SQLServer所在分区空间是否够?数据库文件大小是否达到最大文件限制?FAT

的格式只支持四G以内的文件

  2、数据库文件损坏或被非正常删除时出现这种情况

  3、病毒防火墙的扫描也会引起数据库置疑

  4、当SQLServer启动时,将会尝试获得对数据库文件的排他访问权,如果此时该文件被其他程序占用,或者遗失,数据库将会被标记为置疑。

  5、电脑非法关机也会造成数据库置疑

6、电脑磁盘有坏道有可能造成数据库置疑

二、数据库置疑修复

对于文件系统损坏或磁盘坏道造成的数据库置疑,可以使用以下方法进行修复,此方法可能会造成少量数据丢失(DB_NAME替换为实际的数据库名):

USE master

GO

SP_CONFIGURE 'ALLOW UPDATES',1

GO

RECONFIGURE WITH OVERRIDE

GO

--进入单用户模式

ALTER DATABASE DB_NAME SET SINGLE_USER

GO

--恢复为非紧急模式

ALTER DATABASE DB_NAME SET EMERGENCY

GO

--检查事务一致性

DBCC CHECKDB(‘DB_NAME’, REPAIR_ALLOW_DATA_LOSS)

GO

--恢复为非紧急模式

ALTER DATABASE DB_NAME SET ONLINE

GO

--恢复为多用户模式

ALTER DATABASE DB_NAME SET MULTI_USER

GO

三、不可成功附加数据库

不能成功附加数据库,可能是数据文件有损坏造成的,可使用以下方法进行恢复:

  1. 创建相同名称的数据库
  1. 停止SQL Server服务
  1. 使用原数据库的mdf和ldf文件替换新创建的数据库文件
  1. 启动SQL Server服务,进入SQL Server Management Studio查看,数据库会显示为置疑状态,然后按照前面提到的数据库置疑修复流程进行修复即可

[MSSQL] 数据库置疑怎么处理?相关推荐

  1. SQL SERVER数据库置疑后恢复步骤

    --SQL SERVER数据库置疑后恢复步骤    --1. 恢复步骤:    --a.将smlog_log.ldf文件备份到其它目录下:    --b.将源目录下的smlog_log.ldf文件改名 ...

  2. SQL 2000数据库置疑及修复方案

    数据库置疑及修复 数据库置疑处理 提要:在数据库置疑或者修复的处理过程中,须先将文中的数据库更改为真实的数据库名称. 数据库置疑修复处理完成后,需执行第二步骤,使用DBCC语句对数据库进行检测并修复错 ...

  3. SQL server 2000及SQL server 2005 数据库置疑解决办法

    以数据库mpcyerp为例,做对数据库置疑的处理方法说明: 一.将mpcyerp_Data.MDF文件拷贝出来并备份 在企业管理器中建立一个同名的新数据库mpcyerp 二.停止SQL Server服 ...

  4. 转贴 :sql数据库置疑:Sql Server数据库置疑的解决

    sql数据库置疑:Sql Server数据库置疑的解决 办法 原因: 通常这个问题是由于硬盘空间不够或硬盘读写错误造成的. 现象: 数据库后面有"置疑"字样,查看系统事务日记出现以 ...

  5. 服务器消息7995,修复sql2000数据库置疑时出现的错误.docx

    修复SQL2000数据库置疑时出现的错误 在执行最后一步dbcc checkdb(dbname)检查完整性上出的错 服务器:消息8946,级别16,状态12,行2 表错误:分配页(1:461016)的 ...

  6. 图文详解Silverlight访问MSSQL数据库

    在银光中国网(SilverlightChina.Net)有一篇"Silverlight与常用数据库互操作系列"文章,其中介绍了使用Silverlight存取不同数据库的方法和步骤. ...

  7. 【转发】PHP连接MSSQL数据库案例,PHPWAMP多个PHP版本连接SQL Server数据库

    转发自:http://blog.csdn.net/lccee/article/details/54289076 课前小知识普及:MSSQL和SQL Server是同一个软件,叫法不同而已,MSSQL全 ...

  8. mysql快速迁移数据sql_使用Navicat Premium工具快速迁移数据方法 适用于mysql及mssql数据库...

    前言:在工作中,经常遇到将mysql或mssql数据库从其他服务器转移到新服务器,一般常规操作方法是在原来数据库处导出,然后在新的数据库中导入,这种方法也是可以的,但数据会下载到本地进行中专,下面介绍 ...

  9. sql2000数据库置疑

    sqlserver附加数据库错误823的解决方案 一.SQL-Server附加数据库时失败. 1.异常情况:服务器在正常运行的情况下突然断电,导致数据库文件损坏,具体表现是:数据库名后面有" ...

  10. Godaddy如何导入导出MSSQL数据库

    Godaddy如何导入导出MSSQL数据库 (有一部分翻译错误,近期修正) 如何导入数据库 可以从限制文件中导入SQL共享服务器数据库.如果想把存放在其他地方的数据导入,需要先把其内容拷到限制文件中. ...

最新文章

  1. Eclipse 创建 Java 项目概述
  2. 你负责人工智能哪部分?人工那部分:知识图谱的构建主要靠人工还是机器?...
  3. AWS S3宕机的启发: 云必须分散化
  4. win系统注册缺少的库 32位系统 64位系统
  5. android /data文件夹无法显示内容
  6. java中线程的状态以及线程栈分析
  7. 智能一代云平台(三十):逆向工程生成mybatis
  8. 关于spring注入
  9. html5标签之表单元素
  10. PCL Lesson1 :PCL库PCLVisualizer的简单使用
  11. 谁是HTML5新规则下的牺牲品?
  12. 一个按钮控制定时器的开始与暂停
  13. 华为:将在员工绩效考核中增加“伙伴满意度”选项;谷歌研究员“走火入魔”,被罚带薪休假;魅族回应被吉利收购 | EA周报...
  14. unity3d老电视花屏闪烁效果
  15. 利用公有云cvm 公网IP实现内网穿透,远程登录内网服务器
  16. Python中第三方库-Faker应用
  17. 二、各种贴片元件封装的尺寸数据
  18. 三言两语 (不定时更)
  19. GhostXP_SP2电脑公司特别版_v7.8[修正版]
  20. monkey的基本定义及基本使用(菜鸟学习中)

热门文章

  1. Loadrunner2021安装教程
  2. 红帽子linux拨号上网,centos6.5宽带拨号上网的方法
  3. 如何阅读Java源码?已收藏以备后用
  4. 东北大学《铸造工艺学》结课报告
  5. Inno Setup 简体中文语言包
  6. mysql网吧管理系统_网吧管理系统(数据库)
  7. 网页设计中常用的20个Web安全字体
  8. win7 计算机游戏不见了怎么办,小编教你解决Win7系统下找不到自带小游戏的问题...
  9. UOJRoundPLUS+
  10. Shark为何被抛弃?