[学习] 用友数据库置疑解决方法(案例)
某单位SQL数据库2000进入企业管理器出现(置疑)2字,重启电脑无效,可能原因分析SQL数据库置疑是数据库日志文件LDF错误或异常造成的,一般有以下几种原因引起的:
1、突然断电,非正常关机,造成日志和事务错误;
2、硬件问题,特别是硬盘问题,造成日志和数据文件错误;
3、硬盘的空间不够,如日志文件过大。
二、SQL数据库置疑解决办法
1、首先停止SQL SERVER服务,把软件安装目录D:T6SOFT下admin中置疑的帐套数据库源文件MDF和LDF备份出来到其他地方去,因为修复不一定成功。
2、将置疑数据库的ufdata.ldf文件删除或者重命名为ufdata1.ldf,然后启动SQL数据库服务。将以下脚本语句复制到查询分析器中,
如下为修复数据库置疑脚本(账套号:024 年度:2014为例)。
说明:如数据库存放路径为:D:T6SOFTADMINZT0242014,执行脚本前先停止数据库服务,然后删除此路径下的ufdata.ldf文件,再启用数据库服务执行脚本。
脚本命令:use master
go
sp_configure 'allow updates',1
go
reconfigure with override
go
update sysdatabases set status=-32768 where dbid=DB_ID('UFDATA_024_2014')
go
dbcc rebuild_log('UFDATA_024_2014','D:T6SOFTADMINZT0242014UFDATA.LDF')
go
sp_dboption 'UFDATA_024_2014 ','dbo use only','false'
go
sp_configure 'allow updates',0
go
reconfigure with override
go
3、执行完置疑修复脚本后,如上图提示,数据库 UFDATA_024_2014' 的日志已重建,这表示修复置疑成功(如图),如果没有这个提示,则可能是无法修复。到SQL企业管理器中确认发现数据库UFDATA_024_2014后面的‘置疑’字样已经没有了。接着登录软件正常。
二、数据库质疑修复
首先备份数据库。。。。也就是date什么的
--2005数据库可疑文件修复 --MyDB为修复的数据名
USE MASTER
GO
SP_CONFIGURE 'ALLOW UPDATES',1 RECONFIGURE WITH OVERRIDE
GO
ALTER DATABASE MyDB SET EMERGENCY
GO
sp_dboption 'MyDB', 'single user', 'true'
GO
DBCC CHECKDB('MyDB','REPAIR_ALLOW_DATA_LOSS')
GO
ALTER DATABASE MyDB SET ONLINE
GO
sp_configure 'allow updates', 0 reconfigure with override
GO
sp_dboption 'MyDB', 'single user', 'false'
GO
--sql server 2000数据库质疑,企业管理器出现质疑字样,查询分析器里面没有该数据库
--UF001为需要修复的数据库名称
USE MASTER
GO
SP_CONFIGURE 'ALLOW UPDATES',1 RECONFIGURE WITH OVERRIDE
GO
UPDATE SYSDATABASES SET STATUS =32768 WHERE NAME='UF001'
--重新创建数据库日志
dbcc REBUILD_LOG('UF001','C:\ProgramFiles\MicrosoftSQLServer\MSSQL\Data\UF001_log.LDF')
Go
sp_dboption 'UF001', 'single user', 'true'
Go
update sysdatabases set status =28 where name='UF001'
Go
sp_configure 'allow updates', 0 reconfigure with override
Go
sp_dboption 'UF001', 'single user', 'false'
Go