sql 2008 不支持 BACKUP LOG WITH NO_LOG 和 BACKUP LOG WITH TRUNCATE_ONLY--如果要截断日志收缩文件,可以这样:
DECLARE @I INT SET @I=1
WHILE @I<3
BEGIN
    BACKUP LOG [库名] TO  DISK = N'c:\log.bak'  
    DBCC SHRINKDATABASE('库名')
    SET @I=@I+1
END
--或收缩指定日志文件:
DECLARE @I INT SET @I=1
WHILE @I<3
BEGIN
    BACKUP LOG [库名] TO  DISK = N'c:\log.bak'  
    DBCC SHRINKFILE(日志文件)
    SET @I=@I+1
END

解决方案 »

  1.   


    消息 4208,级别 16,状态 1,第 5 行
    当恢复模式为 SIMPLE 时,不允许使用 BACKUP LOG 语句。请使用 BACKUP DATABASE 或用 ALTER DATABASE 更改恢复模式。
    消息 3013,级别 16,状态 1,第 5 行
    BACKUP LOG 正在异常终止。
    DBCC SHRINKDATABASE: 已跳过数据库 ID 7 的文件 ID 1,因为该文件没有足够的可用空间可以回收。(3 行受影响)
    DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。
    消息 4208,级别 16,状态 1,第 5 行
    当恢复模式为 SIMPLE 时,不允许使用 BACKUP LOG 语句。请使用 BACKUP DATABASE 或用 ALTER DATABASE 更改恢复模式。
    消息 3013,级别 16,状态 1,第 5 行
    BACKUP LOG 正在异常终止。
    DBCC SHRINKDATABASE: 已跳过数据库 ID 7 的文件 ID 1,因为该文件没有足够的可用空间可以回收。
    DBCC SHRINKDATABASE: 已跳过数据库 ID 7 的文件 ID 3,因为该文件没有足够的可用空间可以回收。
    DBCC SHRINKDATABASE: 已跳过数据库 ID 7 的文件 ID 2,因为该文件没有足够的可用空间可以回收。(1 行受影响)
    DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。
    消息 4208,级别 16,状态 1,第 5 行
    当恢复模式为 SIMPLE 时,不允许使用 BACKUP LOG 语句。请使用 BACKUP DATABASE 或用 ALTER DATABASE 更改恢复模式。
    消息 3013,级别 16,状态 1,第 5 行
    BACKUP LOG 正在异常终止。
    消息 8985,级别 16,状态 1,第 6 行
    在 sys.database_files 中找不到数据库 'test' 的文件 '日志文件'。该文件不存在或者已被删除。 
    消息 4208,级别 16,状态 1,第 5 行
    当恢复模式为 SIMPLE 时,不允许使用 BACKUP LOG 语句。请使用 BACKUP DATABASE 或用 ALTER DATABASE 更改恢复模式。
    消息 3013,级别 16,状态 1,第 5 行
    BACKUP LOG 正在异常终止。
    消息 8985,级别 16,状态 1,第 6 行
    在 sys.database_files 中找不到数据库 'test' 的文件 '日志文件'。该文件不存在或者已被删除。 
      

  2.   

    当恢复模式为 SIMPLE 时,不允许使用 BACKUP LOG 语句 .
      

  3.   


    你都simple模式了,还backup log 啊??
      

  4.   

    大哥,你simple都不记日志了,你还备什么日志啊,当然不行了.
    在简单恢复模式下,在每个数据备份后事务日志将自动截断,也就是说,不活动的日志将被删除。因为经常会发生日志截断,所以没有事务日志备份。