SQL Server 2016 Express安装错误:尝试执行未经授权的操作

时间:2016-10-22 20:50:44

标签: sql-server windows-10 sql-server-2016-express

在尝试在Windows 10上安装SQL Server 2016 Express Edition时从未想过会这么糟糕。我安装了SQL Server 2014和SQL Server 2012,并且主要使用SQL Server 2014.然后我想我应该升级并尝试安装SQL Server 2016.然后我收到了这个错误:

  

尝试执行未经授权的操作错误。

尝试搜索此内容并且有关于修改注册表项权限的建议,因此我尝试修改了一些与SQL Server相关的注册表项的权限,但这并没有任何区别。

然后我一直在搜索并发现人们建议它可能是版本冲突问题所以我卸载了所有 SQL Server安装,包括2016版本(没有成功安装)并重新开始。

现在超过两天后,我仍然无法安装SQL Server。

下面是详细日志的一部分,其中时间轴与Windows事件日志错误中的时间轴匹配;不能粘贴整个详细日志,因为它太长了。

EDIT1:经过更多的搜索后,这就是抛出的实际行为:

Exception type: Microsoft.SqlServer.Configuration.Sco.ScoException
(01) 2016-10-23 10:36:52 Slp:     Message: 
(01) 2016-10-23 10:36:52 Slp:         Attempted to perform an unauthorized operation.
(01) 2016-10-23 10:36:52 Slp:     HResult : 0x84bb0001
(01) 2016-10-23 10:36:52 Slp:         FacilityCode : 1211 (4bb)
(01) 2016-10-23 10:36:52 Slp:         ErrorCode : 1 (0001)
(01) 2016-10-23 10:36:52 Slp:     Data: 
(01) 2016-10-23 10:36:52 Slp:       WatsonData = HKEY_LOCAL_MACHINE@SYSTEM\CurrentControlSet\Services\FltMgr
(01) 2016-10-23 10:36:52 Slp:       DisableRetry = true
(01) 2016-10-23 10:36:52 Slp:       HelpLink.EvtType = 0x48BB60BC@0xBB814387
(01) 2016-10-23 10:36:52 Slp:       EMBResult = Cancel
(01) 2016-10-23 10:36:52 Slp:       SQL.Setup.FailureCategory = ConfigurationFailure
(01) 2016-10-23 10:36:52 Slp:       WatsonConfigActionData = INSTALL@CONFIGNONRC@SQL_ENGINE_CORE_INST
(01) 2016-10-23 10:36:52 Slp:       WatsonExceptionFeatureIdsActionData = System.String[]
(01) 2016-10-23 10:36:52 Slp:     Stack: 
(01) 2016-10-23 10:36:52 Slp:         at Microsoft.SqlServer.Configuration.Sco.InternalRegistryKey.OpenSubKey(String subkey, RegistryAccess requestedAccess)
(01) 2016-10-23 10:36:52 Slp:         at Microsoft.SqlServer.Configuration.SqlEngine.Globals.GetSqlRegistryKeyHKLM(ServiceContainer context, String key, String machineName, Boolean createIfNotFound)
(01) 2016-10-23 10:36:52 Slp:         at Microsoft.SqlServer.Configuration.SqlEngine.FilestreamUtils.SetFltMgrAttachWhenLoadedKey(ServiceContainer context)
(01) 2016-10-23 10:36:52 Slp:         at Microsoft.SqlServer.Configuration.SqlEngine.RsFxConfiguration.Install()
(01) 2016-10-23 10:36:52 Slp:         at Microsoft.SqlServer.Configuration.SqlEngine.FilestreamConfiguration.Install()
(01) 2016-10-23 10:36:52 Slp:         at Microsoft.SqlServer.Configuration.SqlEngine.SqlEngineSetupPrivate.SetupFilestream(EffectiveProperties properties)
(01) 2016-10-23 10:36:52 Slp:         at Microsoft.SqlServer.Configuration.SqlEngine.SqlEngineSetupPrivate.Install_ConfigNonRC_Prepare(EffectiveProperties properties)
(01) 2016-10-23 10:36:52 Slp:         at Microsoft.SqlServer.Configuration.SqlEngine.SqlEngineSetupPrivate.Install(ConfigActionTiming timing, Dictionary`2 actionData, PublicConfigurationBase spcb)
(01) 2016-10-23 10:36:52 Slp:         at Microsoft.SqlServer.Configuration.SqlConfigBase.PrivateConfigurationBase.Execute(ConfigActionScenario scenario, ConfigActionTiming timing, ConfigBaseAction action, Dictionary`2 actionData, PublicConfigurationBase spcbCurrent)
(01) 2016-10-23 10:36:52 Slp:         at Microsoft.SqlServer.Configuration.SqlConfigBase.SqlFeatureConfigBase.Execute(ConfigActionScenario scenario, ConfigActionTiming timing, ConfigBaseAction action, Dictionary`2 actionData, PublicConfigurationBase spcbCurrent)
(01) 2016-10-23 10:36:52 Slp:         at Microsoft.SqlServer.Configuration.SqlConfigBase.SlpConfigAction.ExecuteAction(String actionId)
(01) 2016-10-23 10:36:52 Slp:         at Microsoft.SqlServer.Configuration.SqlConfigBase.SlpConfigAction.Execute(String actionId, TextWriter errorStream)
(01) 2016-10-23 10:36:52 Slp:     Inner exception type: System.UnauthorizedAccessException
(01) 2016-10-23 10:36:52 Slp:         Message: 
(01) 2016-10-23 10:36:52 Slp:                 Attempted to perform an unauthorized operation.
(01) 2016-10-23 10:36:52 Slp:         HResult : 0x80070005
(01) 2016-10-23 10:36:52 Slp:         Stack: 
(01) 2016-10-23 10:36:52 Slp:                 at Microsoft.SqlServer.Configuration.Sco.InternalRegistryKey.OpenSubKey(String subkey, RegistryAccess requestedAccess)

SQL 2016 install error

3 个答案:

答案 0 :(得分:1)

我很想找到答案,但是在任何地方都没有。不是真实的,不是完整的解释。

我唯一能够帮助的是......它必须与从先前版本升级失败有关,这是潜伏在注册表中的东西。虽然正如我所说,对此没有答案,但我认为这对MicroSoft来说是一种耻辱,那里有很多人在那里。

最后在Windows 10(Pro)上安装SQL 2016 sp 1我必须完全重建我的电脑并安装在干净的Windows 8.1上才能很好地工作。

然后我完成了Windows升级和SQL 2016,并且所有已知的同事都运行良好。

这可能是你唯一的答案。

答案 1 :(得分:0)

阅读此Article可能有所帮助

查看您的用户帐户权限和权限(您必须具有设置Sql Server的管理权限)

答案 2 :(得分:0)

使用 Sysinternals 的 procmon.exe,我看到此注册表项出现“拒绝访问”错误:“HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Microsoft Edge”

对我有用的解决方法是:

  1. 运行 regedit,将密钥的所有者从“SYSTEM”更改为“Administrator”
  2. 以用户管理员身份运行 SQL Server 安装

微软有更多信息:Attempted to perform an unauthorized operation error when you set up or update SQL Server instances