首先,用户在使用用友软件时遇到数据库离线无法打开的情况,可能是由于数据库出现了问题,导致数据库服务无法正常运行。这种情况下,需要对数据库进行诊断和修复,以恢复数据库的正常运行。
可能的原因包括:数据库服务进程被关闭、数据库被破坏、数据库文件损坏、数据库数据丢失等。
针对不同的情况,可以采取不同的修复方法。比如,如果是数据库服务进程被关闭,可以重新启动服务进程;如果是数据库文件损坏,可以使用数据库修复工具进行修复。
此外,为了避免出现数据库离线无法打开的情况,建议定期对数据库进行备份,以便在出现问题时能够恢复数据。同时,也应该注意及时更新数据库软件、安全补丁等,以提高数据库的安全性和稳定性。
5 释放磁盘空间并且重新运行恢复 *** 作,按照下面的步骤收缩日志。
sp_resetstatus 关闭数据库的置疑标志,但是原封不动地保持数据库的其它选项。
为从根本上解决这样的问题,你可以按下面的 *** 作配置SQLSERVER 2000:
a如果不需要恢复到指定的时间点,你可以将数据库的恢复模式配置为简单,这样
UPDATE,DELETE,SELECT就不会记录日志,日志就不会增加的很大:
USE MASTER
GO
ALTER DATABASE DB_NAME SET RECOVERY SIMPLE
b如果你的恢复模式是全部,你一定要配置日志字段收缩:
USE MASTER
GO
sp_dboption 'databasename','trunc log on chkpt',true
sp_dboption 'databasename','autoshrink',true
c通过每日备份将日志收缩:
BACKUP DATABASE DATABASE_NAME TO BACKUP_DEVICES
BACKUP LOG DATABASE_NAME TO LOG_DEVICES
OR
BACKUP LOG DATABASE_NAME with truncate_only
检查日志的容量:DBCC SQLPERF (LOGSPACE) 这时日志并没有收缩!
d每天在备份数据库完成之后,重新启动MS SQLSERVER SERVICE
USE DATABASE_NAME
go
DBCC SHRINKFILE(2,truncateonly)
检查日志的容量:DBCC SQLPERF (LOGSPACE) 这时日志已经收缩!
e手动快速收缩日志:
/ run below script,you will shrink you database log files
immediately, in my experience,you need to run the script for 3 or
4 minutes before stopping it manually /
use databasename
dbcc shrinkfile(2,notruncate)
dbcc shrinkfile(2,truncateonly)
create table t1(char1 char(4000))
go
declare @i int
select @i=0
while(1=1)
begin
while(@i<100)
begin
INSERT INTO T1 VALUES ('A')
SELECT @I=@I+1
END
TRUNCATE table T1
BACKUP LOG youdatabasename with truncate_only
end
GO
注意 只有在您的主要支持提供者指导下或有疑难解答建议的做法时,才可以使用
sp_resetstatus。否则,可能会损坏数据库。
由于该过程修改了系统表,系统管理员必须在运行 sp_resetstatus这个过程前,启用系统表更新。要
启 用更新,使用下面的过程:
USE master
GO
sp_configure 'allow updates', 1
GO
RECONFIGURE WITH OVERRIDE
GO
过程创建后,立即禁用系统表更新:
sp_configure 'allow updates', 0
GO
RECONFIGURE WITH OVERRIDE
GO
只有系统管理员才能执行 sp_resetstatus。执行该过程后,立即关闭 SQL Server。
无法连接到数据引擎的原因主要是你的服务没有开。右键单击我的电脑-----管理-----服务----找到sql的启动项(也可以是你自己的软件引擎),右键单击,选择-启动,等启动后,将你自己开的软件全部关掉,重新打开就可以了
当以下条件之一为真时,将发生此问题:•在"脱机"的模式是一个或多个数据库。
•SQL Server 管理 Studio 无法正确读取一个或多个数据库。因此,无法检索数据库的某些属性。
在这些情况下,对象的集合不在对象资源管理器窗格中,或在对象资源管理器详细信息窗格中。因此,数据库的某些属性不是作为一个组对象的集合中计算的。
注意:如果您不是系统管理员组的成员,则也会发生此问题。
若要变通解决此问题,请执行以下步骤:
关闭该错误消息。
按 F7 键打开的对象资源管理器详细信息窗格。
用鼠标右键单击列标题,并确保选中下面的列:
名称
创建日期
健康策略
所有者
用鼠标右键单击数据库节点,然后单击刷新。
使用一个数据库时,人们总是希望数据库的内容是可靠的、正确的,但由于计算机系统的故障(硬件故障、软件故障、网络故障、进程故障和系统故障)影响数据库系统的 *** 作,影响数据库中数据的正确性,甚至破坏数据库,使数据库中全部或部分数据丢失。
因此当发生上述故障后,希望能重构这个完整的数据库,该处理称为数据库恢复。恢复过程大致可以分为复原(Restore)与恢复(Restore)过程。
数据库恢复分为以下两类:
1实例故障的一致性恢复
当实例意外地(如掉电、后台进程故障等)或预料地(发出SHUTDOUM ABORT语句)中止时出现实例故障,此时需要实例恢复。实例恢复将数据库恢复到故障之前的事务一致状态。如果在在线后备发现实例故障,则需介质恢复。在其它情况ORACLE在下次数据库起动时(对新实例装配和打开),自动地执行实例恢复。如果需要,从装配状态变为打开状态,自动地激发实例恢复,由下列处理:
(1) 为了解恢复数据文件中没有记录的数据,进行向前滚。该数据记录在在线日志,包括对回滚段的内容恢复。
(2) 回滚未提交的事务,按步1重新生成回滚段所指定的 *** 作。
(3) 释放在故障时正在处理事务所持有的资源。
(4) 解决在故障时正经历一阶段提交的任何悬而未决的分布事务。
2介质故障或文件错误的不一致恢复
介质故障是当一个文件、一个文件的部分或磁盘不能读或不能写时出现的故障。
文件错误一般指意外的错误导致文件被删除或意外事故导致文件的不一致。
这种状态下的数据库都是不一致的,需要DBA手工来进行数据库的恢复,这种恢复有两种形式,决定于数据库运行的归档方式和备份方式。
(1) 完全介质恢复可恢复全部丢失的修改。一般情况下需要有数据库的备份且数据库运行在归档状态下并且有可用归档日志时才可能。对于不同类型的错误,有不同类型的完全恢复可使用,其决定于毁坏文件和数据库的可用性。
(2) 不完全介质恢复是在完全介质恢复不可能或不要求时进行的介质恢复。重构受损的数据库,使其恢复介质故障前或用户出错之前的一个事务一致性状态。不完全介质恢复有不同类型的使用,决定于需要不完全介质恢复的情况,有下列类型:基于撤消、基于时间和基于修改的不完全恢复。
基于撤消(CANCEL)恢复:在某种情况,不完全介质恢复必须被控制,DBA可撤消在指定点的 *** 作。基于撤消的恢复地在一个或多个日志组(在线的或归档的)已被介质故障所破坏,不能用于恢复过程时使用,所以介质恢复必须控制,以致在使用最近的、未损的日志组于数据文件后中止恢复 *** 作。
基于时间(TIME)和基于修改(SCN)的恢复:如果DBA希望恢复到过去的某个指定点,是一种理想的不完全介质恢复,一般发生在恢复到某个特定 *** 作之前,恢复到如意外删除某个数据表之前
以上就是关于用友由于数据库某某某离线,无法打开该数据库怎么办全部的内容,包括:用友由于数据库某某某离线,无法打开该数据库怎么办、如何解决无法打开数据库,恢复 *** 作已将数据标记为suspect。、sqlserver2005无法连接到数据库引擎(sql数据库引擎连接失败)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)