用友软件数据库置疑导致软件无法登录
来源: 添加时间:1970-01-01 访问次数:
用友软件数据库置疑错误解决办法
软件无法登录,提示登录失败或者无法连接到数据库,打开SQL数据库企业管理器,发现在UFDATA_001_2012数据库后面有‘置疑’字样,那么SQL数据库置疑是什么原因产生的呢?又该如何处理解决呢?
一、原因分析
SQL数据库置疑是数据库日志文件LDF错误或异常造成的,一般有以下几种原因引起的:
1、突然断电,非正常关机,造成日志和事务错误;
2、硬件问题,特别是硬盘问题,造成日志和数据文件错误;
3、硬盘的空间不够,如日志文件过大。
二、SQL数据库置疑解决办法
1、首先停止SQL SERVER服务,把软件安装目录UFSMART下admin中置疑的帐套数据库源文件MDF和LDF备份出来到其他地方去,因为修复不一定成功。
2、将置疑数据库的ufdata.ldf文件删除或者重命名为ufdata1.ldf,然后启动SQL数据库服务。将以下脚本语句复制到查询分析器中,
如下为修复数据库置疑脚本(账套号:001 年度:2011为例)。
说明:如数据库存放路径为:D:\UFSMART\Admin\ZT001\2011,执行脚本前先停止数据库服务,然后删除此路径下的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_001_2011')
go
dbcc rebuild_log('UFDATA_001_2011','D:\UFSMART\Admin\ZT001\2011\UFDATA.LDF')
go
sp_dboption 'UFDATA_001_2011 ','dbo use only','false'
go
sp_configure 'allow updates',0
go
reconfigure with override
go
3、执行完置疑修复脚本后,如上图提示,数据库 'UFDATA_001_2011' 的日志已重建,这表示修复置疑成功,如果没有这个提示,则可能是无法修复。到SQL企业管理器中确认发现数据库UFDATA_001_2011后面的‘置疑’字样已经没有了。
三:SQL数据库修复一致性错误解决办法
1、修复数据库置疑完成后,数据库中可能会存在分配错误或者一致性错误,SQL数据库检测修复工具(编号9005),打开工具登录进入后,点击检测数据库(仅检测):发现修复后存在0个分配错误和9个一致性错误。
2、然后使用修复sysindexes表,修复sysobjects表,修复syscolumns表;3张系统表修复完成后,再使用修复数据库,反复修复,一直到提示没有一致性错误为止。如下图:提示CHECKDB修复成功了9个一致性错误。
3、修复当前数据库所有用户表以及重建索引后即可。打开软件后即可正常登录使用。
4、SQL数据库检测修复工具只能修复msde数据库和SQL2000数据库,SQL2005数据库和SQL2008数据库均不能使用该工具进行修复,可以使用以下修复脚本进行修复:
dbcc checkdb --检测数据库(仅检测)
--修复数据库脚本
use master
declare @databasename varchar(255)
set @databasename='UFDATA_001_2011' –以数据库UFDATA_001_2011为例
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'--将目标数据库置为多用户状态
版权与免责声明:
1.凡本网注明来源为“本站原创”的所有作品,包括文字与图片,未经本网授权不得转载。违反上述声明者,本网将依法追究法律责任。
2.凡注明"来源:xxx(非本站)"的作品,均转载自其它媒体,本网转载的目的在于传播更多信息,此类稿件并不代表本网观点,本网不承担此类稿件侵权行为的直接责任及连带责任。
3.如因作品内容、版权等需要同本网联系的,请在作品在本网发表之日起30日内联,否则视为放弃相关权利