sql2005 简单恢复模式下 使用backup log with NO_log是否没有意义?

liuyeyayan 2008-04-22 10:28:32
-- 第一步:清空日志
DUMP TRANSACTION [YZGA] WITH NO_LOG
-- 第二步:截断事务日志
BACKUP LOG [YZGA] WITH NO_LOG
-- 第三步:收缩数据库
DBCC SHRINKDATABASE([YZGA])

==========================================================

日志:

不推荐使用 BACKUP LOG WITH TRUNCATE_ONLY 或 WITH NO_LOG。应使用简单恢复模式自动截断事务日志。

有关更多信息,请参阅在 http://go.microsoft.com/fwlink/events.asp 的帮助和支持中心。



NO_LOG | TRUNCATE_ONLY
通过放弃活动日志以外的所有日志,无需备份复制日志即可删除不活动的日志部分,并截断日志。该选项会释放空间。因为并不保存日志备份,所以没有必要指定备份设备。NO_LOG 和 TRUNCATE_ONLY 是同义的。

注意:
在 SQL Server 的未来版本中将删除该选项。应避免使用该选项进行新的开发工作,并计划修改当前使用它的应用程序。



使用 NO_LOG 或 TRUNCATE_ONLY 截断日志后,记录在日志中的更改不可恢复。为了进行恢复,请立即执行 BACKUP DATABASE 以执行完整备份或完整差异备份。

注意:
尽管可用该选项手动截断事务日志,但是我们极力建议您不要这样做,因为这会将日志链断开。在下一次完整备份或完整差异备份之前,将无法为数据库提供媒体故障保护。只在非常特殊的情况下才手动截断日志,并立即创建数据备份。


注意:
如果不想进行日志备份,请将数据库设置为简单恢复模式。


...全文
1266 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
犀山居士 2011-10-25
  • 打赏
  • 举报
回复
那有什么方式截断日志呢?又不准使用“BACKUP LOG dbname WITH NO_LOG”,使用“DBCC SHRINKFILE (N'dbname_log' , 0, TRUNCATEONLY)”又提示“无法收缩日志文件 2 (dbname_log),因为所有的逻辑日志文件都在使用中。”,请高手指点一下如何才能收缩数据库日志大小!
haker1 2008-04-22
  • 打赏
  • 举报
回复
恩,看了,有所得哦!哈哈.
雅彦 2008-04-22
  • 打赏
  • 举报
回复
楼主 你自己不是在2楼给出答案了?

简单模式下 with no_log无效啊
liuyeyayan 2008-04-22
  • 打赏
  • 举报
回复
重要事项:
当数据库恢复模式设置为简单恢复模式时,将无法使用 BACKUP LOG 语句。

22,210

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧