用户数据库质疑状态处理(可能由于机房断电,数据库服务器异常重启后,导致个别数据库状态质疑):

--修复数据库(置疑)
-- xxxDB 为需要修复的数据库的名称
ALTER DATABASE xxxDB SET EMERGENCY
ALTER DATABASE xxxDB SET SINGLE_USER
DBCC CheckDB (xxxDB, REPAIR_ALLOW_DATA_LOSS)
ALTER DATABASE xxxDB SET MULTI_USER

当初修复完数据库出现库中个别表出现问题时:

use 需要修复的数据库实体的名称
declare @dbname varchar(255)
set @dbname='需要修复的数据库的名称'
exec sp_dboption @dbname,'single user','true'
dbcc checktable('需要修复的数据表的名称',REPAIR_ALLOW_DATA_LOSS)
dbcc checktable('需要修复的数据表的名称',REPAIR_REBUILD)
------把’ 需要修复的数据表的名称’更改为执行DBCC CHECKDB时报错的数据表的名称
exec sp_dboption @dbname,'single user','false'

如果质疑状态的是系统数据库msdb:

方法一、 风险: 丢失原msdb上所有的数据。

A服务器为被“置疑”的服务器;B服务器上装有和A服务器相同版本的数据库软件。

步骤1、停止B服务器上的SQL SERVER 服务,拷贝出“msdbdata.mdf”和“msdblog.ldf”文件。

步骤2、停止A服务器上的SQL SERVER 服务,将从B服务器上拷贝出的“msdbdata.mdf”和“msdblog.ldf”文件覆盖掉A服务器上的这两个文件。 3、重新启动A服务器上的SQL SERVER服务。

方法二 、 风险:丢失原msdb上部分的数据

若是损坏的是日志文件,则可以通过以下步骤恢复(损坏的是数据文件同理恢复Rebuild Log  需要更改):
1)停止sqlsever实例,将msdb的数据文件和日志文件拷贝到其他地方 ,删除原来的数据和日志文件
2)在新服务器上的新实例上新建一个数据库msdbold(用户数据库 ,并且数据文件指定为MSDBData.mdf,日志文件指定为MSDBLog.ldf)
3)关闭新的数据库实例,删除msdbold的数据和日志文件,将1)步骤拷贝的数据文件MSDBData.mdf放到msdbold的数据文件路径下
4)开启新的数据库实例则发现msdbold处于质疑状态,之后通过以下步骤恢复msdbold
use master
go alter database msdbold set emergency
alter database msdbold set single_user with rollback immediate alter database msdbold Rebuild Log on (name=msdbold_log,filename='E:\database\MSDBLog.ldf')
go alter database msdbold set multi_user with rollback immediate 5)之后将新的msdbold的数据文件和日志文件替换掉有问题的数据库实例下的msdb的数据和日志文件即可恢复。

sqlserver 调优(三)的更多相关文章

  1. MySQL调优三步曲(慢查询、explain profile)

    在做性能测试中经常会遇到一些sql的问题,其实做性能测试这几年遇到问题最多还是数据库这块,要么就是IO高要么就是cpu高,所以对数据的优化在性能测试过程中占据着很重要的地方,下面我就介绍一些msyql ...

  2. tomcat调优(三)

    标签: linux 笔者Q:972581034 交流群:605799367.有任何疑问可与笔者或加群交流 1.安全优化 降权启动 telnet管理端口保护 ajp连接端口保护 禁用管理端 关闭本地默认 ...

  3. Java 代码性能调优“三十六”策

    代码优化,一个很重要的课题.可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改对于代码的运行效率有什么影响呢?这个问题我是这么考虑的,就像大海里面的鲸鱼一样,它吃一条小虾米有用吗?没用,但是, ...

  4. JVM原理与深度调优(三)

    jvm垃圾收集算法 1.引用计数算法每个对象有一个引用计数属性,新增一个引用时计数加1,引用释放时计数减1,计数为0时可以回收.此方法简单,无法解决对象相互循环引用的问题.还有一个问题是如何解决精准计 ...

  5. sqlserver 调优(二)

    良好的系统和数据库设计,优质的SQL编写,合适的数据表索引设计,甚至各种硬件因素:网络性能.服务器的性能.操作系统的性能,甚至网卡.交换机等.这篇文章主要讲到如何改善SQL语句,还将有另一篇讨论如何改 ...

  6. sql server调优

    SQLServer调优:查询语句运行几个指标值监测\ https://www.cnblogs.com/zhijianliutang/p/4179110.html

  7. spark调优——JVM调优

    对于JVM调优,首先应该明确,(major)full gc/minor gc,都会导致JVM的工作线程停止工作,即stop the world. JVM调优一:降低cache操作的内存占比 1.   ...

  8. spark调优——Shuffle调优

    在Spark任务运行过程中,如果shuffle的map端处理的数据量比较大,但是map端缓冲的大小是固定的,可能会出现map端缓冲数据频繁spill溢写到磁盘文件中的情况,使得性能非常低下,通过调节m ...

  9. spark调优——算子调优

    算子调优一:mapPartitions 普通的map算子对RDD中的每一个元素进行操作,而mapPartitions算子对RDD中每一个分区进行操作.如果是普通的map算子,假设一个partition ...

随机推荐

  1. idea 增量包配置

    set CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,serve ...

  2. sql 基本查询

    要查询数据库表的数据,我们使用如下的SQL语句: SELECT * FROM <表名> 假设表名是students,要查询students表的所有行,我们用如下SQL语句: -- 查询st ...

  3. H5项目(基于vue框架)常见问题及注意事项

    参考: https://blog.csdn.net/u012377333/article/details/52326158 1.前端中所有的按钮,点击后发送报文的标签,都必须加上 去重功能.防止重复发 ...

  4. vscode gp 安装第三方包

    由于code.google.com被墙,导致一些托管在code.google.com上面的包go get不下来,此功能就是用于解决这个问题. http://www.golangtc.com/downl ...

  5. nodejs 内存泄漏

    This looks OK at first glance. We could think that theThing get's overwritten with every invocation ...

  6. pycharm中evaluate expression的用法

    pycharm中evaluate expression的用法 首先要用debug调试模式运行程序,在代码编辑处右键debug,或着选择右上角的小虫子图标点击. 然后保证整个程序运行的时候可以中断,然后 ...

  7. 【hive 日期函数】Hive常用日期函数整理

    1.to_date:日期时间转日期函数 select to_date('2015-04-02 13:34:12');输出:2015-04-02122.from_unixtime:转化unix时间戳到当 ...

  8. SQL中Truncate语法

    转自:http://www.studyofnet.com/news/555.html 本文导读:删除表中的数据的方法有delete,truncate, 其中TRUNCATE TABLE用于删除表中的所 ...

  9. 前端(十四)—— JavaScript常用类:Number、Date类、字符串、数组、Math类、正则

    JS常用类:Number类.Date类.Math类.字符串.数组.正则 一.Number 1.常用数字 整数:10 小数:3.14 科学计数法:1e5 | 1e-5 正负无穷:Infinity | - ...

  10. 2.执行计划(explain)分析

    1.使用场景 获取执行计划命令:在select 命令前加上explain 或 desc explain select 或 desc select 1.语句执行之前 :防患于未然 2.出现慢语句时 :亡 ...