2005中遇到置疑、丢失日志时按照网上常见的MSSQL2000修复方法来做,
结果发现行不通,甚至连一步都做不下去。其实,在MSSQL2005在处理置疑问题的思
路与MSSQL2000是一致的,但具体到一些语句上MSSQL2005 有了很大的变动。我们以
一个被误删日志文件的数据库为例:
1.MSSQL2000在日志被误删除后会提示置疑(suspect),而在MSSQL2005中却没有特
殊标志,但图标前的”+”不见了当你查询数据库属性时会有Error:945提示:
2.顺着老思路,首先我们想到先进入紧急模式:
MSSQL2000进入紧急模式:
Use Master
Go
sp_configure 'allow updates', 1
reconfigure with override
Go
update sysdatabases set status = 32768 where name = 'dbname'
MSSQL2005进入紧急模式的方法简单了
alter database dbname set emergency
3.重建日志文件
MSSQL2000使用DBCC REBUILD_LOG。
在MSSQL2005中没有了DBCC REBUILD_LOG
可MSSQL2005中是使用dbcc checkdb('dbname',REPAIR_ALLOW_DATA_LOSS)。
当然要想使用dbcc checkdb我们得进入单用户模式:
sp_dboption 'dbname', 'single user','true'
或
alter database dbname set single_user(推荐使用后者)
4.再运行dbcc checkdb看看是否有损坏的页
5.恢复多用户模式
sp_dboption 'dbname', 'single user','false'
或
alter database dbname set multi_user(推荐使用后者)
6.恢复非紧急模式
alter database dbname set online
相关文章
- pandas处理oracle,利用pandas操作Oracle及MySQL数据库
- 数据加载与保存-通用方式 使用df.write.save方法保存数据,同样可通过format指定数据类型。 save方法后需传入保存路径(针对csv、orc、parquet、textFile格式)。 option方法用于设置特定格式的参数。 保存操作可使用SaveMode来指明如何处理数据,如覆盖(overwrite)、追加(append)等,通过mode方法设置。 特定格式保存 与加载类似,Parquet、JSON、CSV等格式均可通过指定format进行保存。 MySQL等关系型数据库的写入也通过JDBC实现,需指定format为jdbc,并传入数据库连接信息及表名。 注意事项
- MySQL数据库CPU飙升紧急处理方法
- 关于数据库字段为DATE类型的日期处理
- iOS数据处理之SQLite数据库
- 数据库关键字作为字段如何处理
- python3连接mysql数据库及异常信息处理【Python入坑系列】
- C#数据库处理SqlCommand参数parameters增加add方法
- Oracle数据库数据导出XML,Blob字段处理
- 数据库批处理