首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ola Hallengren MaintenanceSolution - Differential @ModificationLevel的值不受支持

Ola Hallengren MaintenanceSolution - Differential @ModificationLevel的值不受支持
EN

Database Administration用户
提问于 2020-06-09 17:03:05
回答 1查看 304关注 0票数 0

我刚刚安装了这个很好的工具,大部分都很好,只是如果我包括了一个差异备份参数@ModificationLevel = 50 (或其他任何东西),操作就会失败:

Msg 50000,级别16,状态1,过程DatabaseBackup,第2268行不支持参数@ModificationLevel的值。

示例:

代码语言:javascript
复制
EXECUTE [dbo].[DatabaseBackup]
@Databases = 'ALL_DATABASES', @CleanupTime = 2160, @Compress = 'Y', 
@Directory = '\\cem01nas2\sql_backups',
@BackupType = 'DIFF', @ChangeBackupType = 'Y', @ModificationLevel = 50 
GO

给出错误,但是如果我删除@ModificationLevel参数,它就能工作。有什么想法吗?

EN

回答 1

Database Administration用户

发布于 2020-06-09 17:19:06

这表示您正在进行验证(取自Ola Hallengren的站点这里)

代码语言:javascript
复制
  IF @ModificationLevel IS NOT NULL AND NOT EXISTS(SELECT * FROM sys.all_columns WHERE object_id = OBJECT_ID('sys.dm_db_file_space_usage') AND name = 'modified_extent_page_count')
  BEGIN
    INSERT INTO @Errors ([Message], Severity, [State])
    SELECT 'The value for the parameter @ModificationLevel is not supported.', 16, 1
  END

  IF @ModificationLevel IS NOT NULL AND @ChangeBackupType = 'N'
  BEGIN
    INSERT INTO @Errors ([Message], Severity, [State])
    SELECT 'The value for the parameter @ModificationLevel is not supported.', 16, 2
  END

  IF @ModificationLevel IS NOT NULL AND @BackupType <> 'DIFF'
  BEGIN
    INSERT INTO @Errors ([Message], Severity, [State])
    SELECT 'The value for the parameter @ModificationLevel is not supported.', 16, 3
  END

请检查条件,并记住@ModificationLevel是进行完整备份所需的不同。如果没有足够的差异,它就不会执行完整的备份。

代码语言:javascript
复制
IF @ChangeBackupType = 'Y'
    BEGIN
      IF @CurrentBackupType = 'LOG' AND @CurrentRecoveryModel IN('FULL','BULK_LOGGED') AND @CurrentLogLSN IS NULL AND @CurrentDatabaseName <> 'master'
      BEGIN
        SET @CurrentBackupType = 'DIFF'
      END
      IF @CurrentBackupType = 'DIFF' AND (@CurrentDatabaseName = 'master' OR @CurrentDifferentialBaseLSN IS NULL OR (@CurrentModifiedExtentPageCount * 1. / @CurrentAllocatedExtentPageCount * 100 >= @ModificationLevel))
      BEGIN
        SET @CurrentBackupType = 'FULL'
      END
    END
票数 2
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/268817

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档