使用DOS工具修复数据库
当SQL Server 实例出现异常,无法远程链接时,数据库管理员需要登陆到SQL Server实例机器上,通过命令行工具,修复异常。
一,使用net命令行启动数据库
通过net start 命令启动SQL Server服务,服务名是mssqlserver,命令如下:
net start MSSQLSERVER
可以在启动时,添加启动参数(startup option),使用“/”代替“-”:
net start MSSQLSERVER /f /m
二,SQL Server服务的启动参数
SQL Server的启动参数:
- -f :Starts an instance of SQL Server with minimal configuration. This is useful if the setting of a configuration value (for example, over-committing memory) has prevented the server from starting.
参数-f :指定以最小化配置启动SQL Server服务,
- -T trace#:Indicates that an instance of SQL Server should be started with a specified trace flag (trace#) in effect. Trace flags are used to start the server with nonstandard behavior.
参数 -T:指定SQL Server使用特定的追踪标志(Trace Flag)启动,追踪标志(Trace Flag)能够使SQL Server临时处于特殊的行为,便于DBA进行故障排除。
三,追踪标志
追踪标志(Trace Flag)用于把SQL Server临时切换到特殊的状态。
1,3608 以最小化配置启动
3608:在SQL Server启动时,除了master数据库之外,阻止自动启动和还原其他数据库。对于系统数据库,如果需要初始化tempdb,那么SQL Server会还原model数据库,用于创建tempdb数据库。对于用户数据库,在用户访问时启动和还原。
通常情况下,-T3608 和 -f 参数一起使用,表示以最小化配置启动SQL Server示例:
NET START MSSQLSERVER /f /T3608
2,902 修复在脚本升级模式下遇到的错误
902:在启动数据库服务时,绕过(bapass)数据库内部升级脚本的执行。当安装更新时,如果事件查看器抛出以下错误,可以使用902标志临时修复。
Script level upgrade for database 'master' failed because upgrade step 'msdb110_upgrade.sql' encountered error 226, state 6, severity 16. This is a serious error condition which might interfere with regular operation and the database will be taken offline. If the error happened during upgrade of the 'master' database, it will prevent the entire SQL Server instance from starting. Examine the previous errorlog entries for errors, take the appropriate corrective actions and re-start the database so that the script upgrade steps run to completion.
警告:此跟踪标志用于在脚本升级模式期间对失败更新进行故障诊断,并且不支持在生产环境中连续运行它。 数据库升级脚本需要成功执行完整安装的累积更新和Service Pack。 不这样做可能会导致您的SQL Server实例出现意外问题。
当出现该错误时,在本地模式下,使用net 命令启动SQL Server服务:
net start MSSQLSERVER /T902
也可以在SQL Server配置管理器中,向启动(startup)参数中增加-T902,每次SQL Server服务启动时,都会自动以902标志启动:
四,sqlcmd工具
登陆到SQL Server实例的主机,打开DOS命令行窗口,使用sqlcmd工具连接SQL Server实例,
sqlcmd -A -E
以专用管理员链接登陆SQL Server实例,然后,执行响应的查询,排除故障。
五,添加权限
当管理员有主机(Host)的权限,而没有SQL Server实例的权限时,管理员可以通过DOS命令为自己添加权限。
首先,以单例模式开始SQL Server实例:
net stop mssqlserver
net start MSSQLSERVER /f /m
其次,登陆到SQL Server实例:
sqlcmd -A -E
然后,创建Login,授予权限,作为DBA,应该授予最高的系统管理的权限。
create login [domain\name]
from windows;
go alter server role sysadmin
add member [domain\name] ;
go
最后,以多用户模式重启SQL Server服务:
net stop mssqlserver
net start MSSQLSERVER
参考文档:
Use Trace Flag 902 to Recover from a Cumulative Update Failure
Using the SQL Server Service Startup Options
How to: Start an Instance of SQL Server (net Commands)
使用DOS工具修复数据库的更多相关文章
- Android开发之使用sqlite3工具操作数据库的两种方式
使用 sqlite3 工具操作数据库的两种方式 请尊重他人的劳动成果,转载请注明出处:Android开发之使用sqlite3工具操作数据库的两种方式 http://blog.csdn.net/feng ...
- 【RDA】使用RDA(Remote Diagnostic Agent)工具对数据库进行健康检查
[RDA]使用RDA(Remote Diagnostic Agent)工具对数据库进行健康检查 分类: Linux RDA英文全称叫做"Oracle Remote Diagnostic Ag ...
- SQL Server 修复数据库 相关 脚本 之 DBCC CHECKDB 用法 来自同事分享
DBCC CHECKDB 用法详解, 手工修复数据库 1. 快速修复 DBCC CHECKDB ('数据库名',REPAIR_FAST) 2.重建索引并修复 DBCC CHECKDB ('数据库名', ...
- 使用exp&imp工具进行数据库备份及恢复
使用exp&imp工具进行数据库备份及恢复1.exp/imp使用方法介绍exp/imp为一种数据库备份恢复工具,也可以作为不同数据库之间传递数据的工具,两个数据库所在的操作系统可以不同.exp ...
- DBCC CHECKDB用法 手工修复数据库
快速修复 DBCC CHECKDB ('数据库名', REPAIR_FAST) 重建索引并修复 DBCC CHECKDB ('数据库名', REPAIR_REBUILD) 如果必 ...
- 使用pentaho工具将数据库数据导入导出为Excel
写在前面:本篇博客讲述的是如何使用pentaho工具快速的将数据库数据导出为Excel文件,以及如何将Excel文件数据导入数据库. 补充:使用此工具并不需要任何一句代码并能快速便捷解决实际问题,此工 ...
- sql2005数据库置疑修复断电崩溃索引损坏 数据库索引错误修复/数据库表损坏/索引损坏/系统表混乱等问题修复
sql2005数据库置疑修复断电崩溃索引损坏 数据库索引错误修复/数据库表损坏/索引损坏/系统表混乱等问题修复 客 户 名 称 济南某电子商务公司 数 据 类 型 SQL2005数据库 故 障 检 测 ...
- sql server mdf碎片级数据库修复,数据库碎片级提取
sql server mdf碎片级数据库修复,数据库碎片级提取 大家都知道MDF数据库文件一般都比较大,在磁盘中往往被存放到不连续的逻辑簇中,久而久之就形成了文件碎片,当文件被误删除或者格式化后, ...
- 通过文件对照工具Merge数据库
项目分成线下开发版.线上測试版.线上生产版,因此相应有三个数据库. 对于一些静态数据.经常须要同步.改动了线下的开发版本号,同一时候也须要更新线上的測试版和线上生产版数据库,有时候线上的一些数据库改动 ...
随机推荐
- AWS CSAA -- 04 AWS Object Storage and CDN - S3 Glacier and CloudFront(三)
021 Storage Gateway 022 Snowball 023 Snowball - Lab 024 S3 Transfer Acceleration
- LeetCode题解之Binary Number with Alternating Bits
1.题目描述 2.问题分析 将数值转换为二进制,然后将前面的 0 去掉,再遍历一边二进制字符串,对每个字符和其后部的字符进行比较. 3.代码 bool hasAlternatingBits(int n ...
- Java为什么不支持多继承
类定义属性和方法 描述某一类事物的抽象 而接口定义的是行为 并不限于任何具体意向 按照逻辑上来说 单继承更明确 一个子类就应该是其父类代表的事物中的某个更具体的类别 不应该即是这种东西又是那种东西 而 ...
- w3school 基础学习
http://www.w3school.com.cn/ http://www.w3school.com.cn/sql/sql_quickref.asp
- Android图形显示之硬件抽象层Gralloc【转】
https://blog.csdn.net/yangwen123/article/details/12192401 FrameBuffer驱动程序分析文中介绍了Linux系统下的显示驱动框架,每个显示 ...
- Balanced Search Trees
平衡搜索树 前面介绍的二叉搜索树在最坏情况下的性能还是很糟糕,而且我们不能控制操作的顺序,有时根本就不是随机的,我们希望找到有更好性能保证的算法. 2-3 search trees 于是先来了解下 2 ...
- openlayers5实战--踩坑总结
1.接口返回圆心坐标和半径,直接通过new Circle(center,radius)添加圆形feature变小问题. 解决办法: new Feature()的geometry参数不能直接赋值new ...
- 基于汇编的 C/C++ 协程 - 背景知识
近几年来,协程在 C/C++ 服务器中的解决方案开始涌现.本文主要阐述以汇编实现上下文切换的协程方案,并且说明其在异步开发模式中的应用. 本文地址:https://segmentfault.com/a ...
- Tornado框架实现异步爬虫
from urllib.parse import urljoin from bs4 import BeautifulSoup from tornado import gen, httpclient, ...
- Python2.7-内置异常类型
python内置了许多异常类型,他们的继承关系如下:-----------------------------------------------BaseException +-- SystemExi ...