详解SQL Server数据修复命令DBCC的使用
2015-11-25 11:35
232 查看
MS Sql Server 提供了很多关于数据库修复的命令,当MS Sql Server 数据库遭到质疑或者是有的无法完成读取时可以尝试这些修复命令。
用法:DBCC DBREINDEX (表名,’’) 修复此表所有的索引。
上述的相关内容就是对SQL Server数据修复命令DBCC的描述,希望会给你带来一些帮助在此方面。
1. DBCC CHECKDB
重启服务器后,在没有进行任何操作的情况下,在SQL查询分析器中执行以下SQL进行数据库的修复,修复数据库存在的一致性错误与分配错误。use master declare @databasename varchar(255) set @databasename=’需要修复的数据库实体的名称’ exec sp_dboption @databasename, N’single’, N’true’ –将目标数据库置为单用户状态 dbcc checkdb(@databasename,REPAIR_ALLOW_DATA_LOSS) dbcc checkdb(@databasename,REPAIR_REBUILD) exec sp_dboption @databasename, N’single’, N’false’–将目标数据库置为多用户状态然后执行 SQL Server数据修复命令DBCC CHECKDB(’需要修复的数据库实体的名称’) 检查数据库是否仍旧存在错误。注意:修复后可能会造成部分数据的丢失。
2. DBCC CHECKTABLE
如果DBCC CHECKDB 检查仍旧存在错误,可以使用DBCC CHECKTABLE来修复。use 需要修复的数据库实体的名称 declare @dbname varchar(255) set @dbname=’需要修复的数据库实体的名称’ exec sp_dboption @dbname,’single user’,'true’ dbcc checktable(’需要修复的数据表的名称’,REPAIR_ALLOW_DATA_LOSS) dbcc checktable(’需要修复的数据表的名称’,REPAIR_REBUILD) —把’ 需要修复的数据表的名称’更改为执行SQL Server数据修复命令DBCC CHECKDB时报错的数据表的名称 exec sp_dboption @dbname,’single user’,'false’
3. 其他的一些常用的修复命令
DBCC DBREINDEX 重建指定数据库中表的一个或多个索引用法:DBCC DBREINDEX (表名,’’) 修复此表所有的索引。
上述的相关内容就是对SQL Server数据修复命令DBCC的描述,希望会给你带来一些帮助在此方面。
相关文章推荐
- 非常不错的MySQL优化的8条经验
- ORACLE 创建自增序列生成流水号
- MySQL 优化之 ICP (index condition pushdown:索引条件下推)
- MySQL中利用索引对数据进行排序的基础教程
- mysql 对取当前日期周一和周日语句的详细解析
- jedispool 连 redis 高并发卡死 解决方案
- group by 多个条件进行分组
- Windows 下 MySQL 的配置创建mysql服务
- 页面上的复选框,然后保存到数据库,再从数据库取出来,看那个复选框被选中
- 快速学习MySQL索引的入门超级教程
- 利用索引和表扫描原理优化查询SQL语句
- 在64位SQL Server中创建Oracle的链接服务器
- CI对数据库的常用操作
- MySQL系列:innodb源码分析之内存管理
- Tomcat+redis+nginx配置
- MySQL 当记录不存在时insert,当记录存在时update
- postgresql 存储过程简单使用
- TRANSLATE 函数
- Oracle 11g必须开启的服务及服务详细介绍
- 几个SQL