Win10 安装 Sql Server 2014 失败(“UNKNOWN\Components\” 错误)的解决方法
最近开始学习数据库,自己电脑装的是Win10 + VS2015, 发现Win10 不支持Sql Server 2008,下了个Sql Server 2012安装竟然失败了。。。
所以干脆直接上 2014sp1了,结果安装完还是失败。折腾劲又来了,通过搜索和尝试,最终终于搞定,总结记录下来分享(部分内容来自网络):
首先如果安装过程没弹窗报错,但是完成后提示“完成但失败”,结果列表里有部分功能显示失败,需要卸载后重新安装,以下是彻底卸载的方法:
1、下载 srvinstw 和 windows installer clean up软件: 链接:http://pan.baidu.com/s/1sjZgPsh%20 密码:ewz2
2、srvinstw 用于移除服务。用管理员身份运行它,移除所有的SQL SERVER服务。
3、管理员身份运行 windows installer clean up软件。删除所有的sqlserver选项。
4、把之前安装sqlserver时安装的Microsoft .net framework相关组件全部删掉。那如何知道哪些framework是我
的sqlserver给我安装上的呢?很容易知道,去程序和功能那里看,如果framework后面的日期,如果和sqlserver的日
期一样,那就可以尽情地用clean up把它删除掉。
5、去C盘里面的windows下面的inf文件夹。搜索sqlserver,把相关的文件夹全部删除。
6、打开注册表,沿着这条路径HKEY-CURRENT-USER-SOFTWARE-MICROSOFT-MICROSOFT SQL
SERVER,把最后的SQL SERVER文件夹全部删掉
再沿着这条路径,HKEY-LOCAL MACHINE-SOFTWARE-MICROSOFT-MICROSOFT-SQL SERVER.把最
后的SQL SERVER文件夹全部删掉
上面两条路径不区分大小写,因为我全部用的是大写字母。
ok,现在已经是把工作完成了一半了。然后,把杀毒软件全部退掉,把防火墙全部关闭。
并且运行安装程序的时候要用管理员身份,不然会报权限错误。看到这里大家别急着安装,因为还有一个小工作要做。
以管理员身份运行CMD命令提示符,输入以下语句并运行就OK了
secedit /configure /cfg %windir%\inf\defltbase.inf /db defltbase.sdb /verbose
(这句好像是将操作系统还原至最初安装时的默认安全设置)
但是我安装时依旧报错:
Could not open key: UNKNOWN\Components\[随机数字]. Verify that you have sufficient access to that key, or contact your support personnel.
修复方法:
1.使用组合键 Win+R 打开“运行”对话框,输入 regedit 并回车(可能需要管理员权限)
2.找到这个键值 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData
3.右击“UserData” 选择“权限(P)...”更改所有者(Administrators 或当前用户),勾选“替换子容器和对象的所有者(R)”,点击“应用(A)”,勾选“使用可从此对象继承的权限替换所有子对象权限(P)”,点击“确定”按钮。
再次重新安装应该就没问题了,我感觉主要是键值 “ HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData” 的权限问题。