我一直在针对 SQL Server 2012 Enterprise 进行开发,并开始迁移到生产环境,我发现我们的托管服务提供商已经安装了 Standard。我不认为这应该是一个问题,因为我没有实现任何企业特定的功能。但是,当我恢复数据库时,它无法激活,并且在事件日志中,我发现一条消息表明数据库无法激活,因为它包含版本不支持的功能。当我深入挖掘时,我发现似乎 FTS 或其他一些函数自动创建了 5 个分区函数和方案。
然后我经历了一个耗时的过程来删除分区功能和方案,并且可以成功地恢复标准版上的数据库。
过了一会儿,我备份了数据库(没有 PF 或 PS),将它转移到我的开发环境,恢复它(在 SQL Enterprise 上),过了一段时间我发现已经创建了一个分区函数和方案。当我接下来备份和恢复到 prod 时,这一次数据库激活正常,没有错误 - 即使有分区功能和方案。
我刚刚运行了以下命令:
SELECT feature_name FROM sys.dm_db_persisted_sku_features ;
从这里
http://msdn.microsoft.com/en-us/library/cc280724.aspx
并发现对于具有 5 个分区功能/方案的数据库,分区被列为特定于版本的功能。当对具有 1 个功能/方案的数据库运行相同的操作时,它没有列出。
这里有什么事情是自动创建的,FTS 相关的分区方案在标准版上是可以的,但不是手动创建/其他类型的?(请记住,我从未手动实现分区)