我在具有两个节点(单实例集群)的故障转移集群中运行 SQL Server 2017 Standard CU 5。我已按照这两 本手册停用 CEIP aka 间谍软件功能:
- CEIP 服务被禁用和停止,
- 从集群中删除的 CEIP 角色
- 并且有关 CustomerFeedback 和 EnableErrorReporting 的所有注册表项都设置为 0。
但是我仍然收到消息“软件使用指标已启用”。在服务重新启动后的 SQL Server 错误日志中。此外,我的 Windows 事件日志中经常出现来自 ESENT 的错误,如下所示:
有针对此问题的MS 知识库文章。但是它适用于 SQL Server 2012。它表示此错误与“软件使用指标功能”有关。我已经按照建议授予 SQL Server 服务帐户的权限。但是错误消息不断出现,我不希望 Microsoft 收集数据。
以下是我的问题:
- 这是与 CEIP 相同的功能还是其他东西?
- 如何正确停用软件使用指标?
我会指出,禁用 SQLCEIP 的服务不是受支持的配置,因此虽然您可以在 SQL Server 2016+ 的付费版本中禁用向 Microsoft 发送信息,但此处记录了执行此操作的正确机制:
https://learn.microsoft.com/en-us/sql/sql-server/customer-experience-improvement-program-for-sql-server-data-tools?view=sql-server-2017
(这将使 SQLCEIP 服务继续运行,并且不会向 Microsoft 发送信息)。Microsoft 建议您遵循记录在案的程序,以确保当您就某个问题与客户支持联系时,他们可以帮助您快速解决该问题。
至于您关于此“额外”会话是什么的具体问题,该功能不是向 Microsoft 发送信息的东西。该功能使客户可以使用一种工具来确定他们在其组织中运行的 SQL 副本的数量。从 SQL 发出的数据进入本地 Windows 机器上的一个文件。您可以自己使用该工具来查看它的作用 - 它称为 Microsoft 评估和规划工具包,您可以在此处下载:
https://www.microsoft.com/en-us/download/details.aspx?id=7826
至于 SQLCEIP 是否是“间谍软件”,我会尽量确保您了解通过 SQLCEIP 机制收集/不收集哪些信息的完整信息。Microsoft 不会尝试捕获击键、客户数据或以其他方式使用我们收集的信息向客户推销(您可能会在传统的间谍软件定义中找到,例如https://simple.wikipedia.org/wiki/Spyware)。通过 SQLCEIP 收集的信息用于确保功能在新版本 SQL/新功能的开发周期中为客户正常运行,并确保我们了解客户如何使用该产品,以便我们改进. 我们不会收集信息来识别任何人的个人身份,我们也不想知道您是谁或您个人做了什么。我们感兴趣的是“有多少人使用列存储索引?” 以及“列存储索引中有多少行组被优化打包,以便客户可能获得良好的性能体验?”。收集的信息帮助我们确保我们的工程团队完成了为客户提供每个功能的完整工作。
您可以审核 SQLCEIP 收集的所有信息以亲自查看。说明在这里:
https://learn.microsoft.com/en-us/sql/database-engine/install-windows/local-audit-for-sql-server-usage-feedback-collection?view=sql-server-2017
此外,我们会记录我们收集/不收集哪些信息的隐私政策。微软最近对公司的所有部分进行了重新改造,以使用单一的隐私声明,但 SQL 有一个补充,它与之前的单独隐私声明紧密结合,因为我们希望它易于阅读/理解,并且不会迷失在数据中Microsoft 提供的其他消费者服务的收集策略。
这是顶级 Microsoft 隐私声明:
https://privacy.microsoft.com/en-US/privacystatement
这是 SQL Server 的隐私补充:
https://learn.microsoft.com/en-us/sql/sql-server/sql-server-privacy?view=sql-server-2017
我希望这能回答您关于软件使用指标机制是什么以及为什么它没有向 Microsoft 发送信息/与 SQLCEIP 相关的问题。