导航
  • 主页
  • 基础类
  • 应用实例
  • 新技术前沿

附加数据库时出现错误提示:错误5173

zgga 2003-12-20 01:41:35
因数据库日志文件太大,我们通常采用了先分离数据库,再把日志文件删除后,附加数据库来缩小日志文件

当这次不知怎么搞的,附加数据库时出现错误提示:错误5173


请问怎么解决呀,十万火急,谢谢
...全文
934 点赞 收藏 6
写回复
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zgga 2003-12-20
zjcxc(邹建) 您好,非常感谢您的帮助,我们碰的具体情况如下,请给于指导




我昨天因数据库日志文件太大,采用了先分离数据库,把日志文件删除后,再附加数据库,但在附加数据库时出错

一种是在没有LOG文件时附加,原来会自动生成LOG日志文件,当这次提示:1813错误,未能打开数据库v4zb,Create Database 终止,物理文件V4ZB.LDF可能有误

在用反删除软件把日志文件恢复过来后,我又重新附加数据库,碰的的错误提示是:5172错误,V4ZB.LDF不是有效的数据库表头,pageAudit属性不正确




回复
1:截断事务日志:
BACKUP LOG 数据库名 WITH NO_LOG

2:清空日志
DUMP TRANSACTION 库名 WITH NO_LOG

再:
企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了


3: 删除LOG
1:分离数据库 企业管理器->服务器->数据库->右键->分离数据库
2:删除LOG文件
3:附加数据库 企业管理器->服务器->数据库->右键->附加数据库
此法生成新的LOG,大小只有500多K
再将此数据库设置自动收缩
或用代码:
下面的示例分离 pubs,然后将 pubs 中的一个文件附加到当前服务器。

EXEC sp_detach_db @dbname = 'pubs'
EXEC sp_attach_single_file_db @dbname = 'pubs',
@physname = 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf'


4: 如果想以后不让它增长
企业管理器--服务器--右键数据库--属性--事务日志--将文件增长限制为xM(x是你允许的最大数据文件大小)

--SQL语句的设置方式:
alter database 数据库名 modify file(name=逻辑文件名,maxsize=20)

5.设置为自动收缩
企业管理器--服务器--右键数据库--属性--选项--选择"自动收缩"
回复
如果没有错,就用文件恢复工具恢复你的日志文件.

再附加数据库.

文件恢复工具

EasyRecovery

优秀的数据恢复工具,可把受到病毒破坏、格式化、删除的硬盘数据抢救回来!
6.0版本使用新的数据恢复引擎,并且能够对ZIP文件以及微软的Office系列
文档进行修复!6.0中还包含了Ontrack Data Advisor!其他更新请看软件
自带的Readme

★ FinalData NT Standard 1.5

FinalData 可以回收在 Windows NT/2000/XP 中被误删的文件。
它还可以恢复你的数据,主引导记录(MBR),引导扇区,FAT。
它能找回其他类似工具所找不到的,安全,快速,专业
回复
--方法有没有错?

附加数据库:

企业管理器
--右键"数据库"
--所有任务
--附加数据库
--选择你的.mdf文件名
--确定
--提示没有.ldf文件,是否创建,选择"是"


查询分析器中的方法:

--如果只有数据文件的情况
sp_attach_single_file_db '数据库名'
,'数据文件名(*.mdf注意要带目录)' --后面可以是用,分隔的该数据库的多个数据文件

回复
cgsun 2003-12-20
help you up.
回复
zgga 2003-12-20
有没人帮一下呀,要跳楼了
回复
发动态
发帖子
MS-SQL Server
创建于2007-09-28

3.2w+

社区成员

MS-SQL Server相关内容讨论专区
申请成为版主
社区公告
暂无公告