主 题: 问一个日志操作的问题
作 者: smiler007 (笑一笑)
等 级:
信 誉 值: 100
所属社区: MS-SQL Server 基础类
问题点数: 100
回复次数: 10
发表时间: 2005-9-11 15:49:17
各位高手:
我的数据库每天大约增加1G左右的日志文件,数据库文件的大小只有2G多,上次数据库备份是在8月22日,在进行9月3号的数据处理时出错了,原因中硬盘空间不够了...:(
我现在想从日志文件里恢复数据至9月1号,如何做呢?
回复人: smiler007(笑一笑) ( ) 信誉:100 2005-9-11 18:29:53 得分: 0
再追问一个问题:总是进行数据库的收缩是好是坏呢???
Top
回复人: vivianfdlpw() ( ) 信誉:100 2005-9-11 19:02:51 得分: 80
--备份数据库
backup database 数据库 to disk='c:/db.bak'
--备份事务日志
backup log 数据库 to disk='c:/dblog.bak'
--恢复数据库完整备份
restore database 新数据库 from disk='c:/db.bak'
with norecovery,
move '逻辑文件名' to 'mdf文件新位置',
move '逻辑日志名' to 'ldf文件新位置'
--恢复事务日志
declare @time datetime
set @time='2005-09-01 00:00:00'
restore log dbase from disk='c:/testlog.bak'
with recovery,stopat=@time
回复人: vivianfdlpw() ( ) 信誉:100 2005-9-11 19:05:14 得分: 0
--备份数据库
backup database 数据库 to disk='c:/db.bak'
--备份事务日志
backup log 数据库 to disk='c:/dblog.bak'
--恢复数据库完整备份
restore database 新数据库 from disk='c:/db.bak'
with norecovery,
move '逻辑文件名' to 'mdf文件新位置',
move '逻辑日志名' to 'ldf文件新位置'
--恢复事务日志
declare @time datetime
set @time='2005-09-01 00:00:00'
restore log 新数据库 from disk='c:/dblog.bak'
with recovery,stopat=@time
回复人: smiler007(笑一笑) ( ) 信誉:100 2005-9-11 21:00:02 得分: 0
第二个问题呢?
总是进行数据库的收缩是好是坏呢???
回复人: vivianfdlpw() ( ) 信誉:100 2005-9-11 21:10:20 得分: 0
具体情况具体分析,要根据你的业务情况找到一个合适的收缩频率,比如数据库操作比较频繁,短时间出现大量日志纪录的情况下,收缩的频率就应该高一点。恰到好处最好,过犹不及
回复人: leoeva(希锐) ( ) 信誉:100 2005-9-11 23:17:40 得分: 5
首先,你要确保你从8月22-9月3日的日志文件是完好的,然后再按着楼上的去做吧!依你的数据库和日志的大小,我建议你还是不要太过频繁的收缩数据库。