使用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数据库
项目分成线下开发版.线上測试版.线上生产版,因此相应有三个数据库. 对于一些静态数据.经常须要同步.改动了线下的开发版本号,同一时候也须要更新线上的測试版和线上生产版数据库,有时候线上的一些数据库改动 ...
随机推荐
- LeetCode题解之Valid Triangle Number
1.题目描述 2.问题分析 暴力计算 3.代码 int triangleNumber(vector<int>& nums) { ; ) return res; ; i < n ...
- 适用于 Windows 的自定义脚本扩展
自定义脚本扩展在 Azure 虚拟机上下载并执行脚本. 此扩展适用于部署后配置.软件安装或其他任何配置/管理任务. 可以从 Azure 存储或 GitHub 下载脚本,或者在扩展运行时将脚本提供给 A ...
- MySQL面试之说明myisam和innodb两种存储引擎的不同之处
1.事务的支持不同(innodb支持事务,myisam不支持事务) 2.锁粒度(innodb行锁应用,myisam表锁) 3.存储空间(innodb既缓存索引文件又缓存数据文件,myisam只能缓存索 ...
- Linux运维之--zabbix使用(实时更新)
之前安装的是zabbix3.x版本,今天尝试安装zabbix4.2版本,并做个总结.建议生产环境还是使用3.4版本比较好,因为4.2版本上可能语法又增加了一些,所以建议使用熟练的版本 1.首先是安装z ...
- 1.4环境的准备(四)之Pycharm的使用技巧
返回总目录 目录: 1.快捷键的使用: 2.提示技巧: 3.其他技巧: (一)快捷键的使用: (1)Pycharm自带默认的快捷键 1.Ctrl + C 复制 2.Ctrl + V 粘贴 3.Ctrl ...
- 【Alpha go】Day 3!
[Alpha go]Day 3! Part 0 · 简要目录 Part 1 · 项目燃尽图 Part 2 · 项目进展 Part 3 · 站立式会议照片 Part 4 · Scrum 摘要 Part ...
- Alpha冲刺报告(4/12)(麻瓜制造者)
今日完成的情况 江郑: 今天对数据库的需求部分进行了完善 邓弘立: 完成了首页界面UI 刘双玉: 基本完成商品信息发布接口 汪志彬: 尝试UI的设计 符天愉: 将登录接口部署到服务器上,结果Linux ...
- 极限编程核心价值:尊重(Respect)
原文:https://deviq.com/respect 极限编程核心价值:简单(Simplicity) 极限编程核心价值:沟通(Communication) 极限编程核心价值:反馈(Feedback ...
- es6安装babel包
1.前面下载node.js及安装淘宝镜像可以查看我写的vue.js环境搭建 2.安装完node后,安装babel npm install -g babel-cli 3.检验babel是否安装成功: b ...
- 死磕nginx系列--nginx 限流配置
限流算法 令牌桶算法 算法思想是: 令牌以固定速率产生,并缓存到令牌桶中: 令牌桶放满时,多余的令牌被丢弃: 请求要消耗等比例的令牌才能被处理: 令牌不够时,请求被缓存. 漏桶算法 算法思想是: 水( ...