【前言】
之前由于小编的错误操作误删了注册表中的一项关于sql的内容,具体删了什么,也忘记了,当时是为了解决一个sql问题,问题没解决成,反而sql后来被弄得修复不了、装不上、卸载不了,无奈之下,出于当时正在准备面试事项,sql也不急着用,就一直没管,想用数据库做一些demo的时候,小编选择安装了一个mysql进行实践,近期小编要做一个图书管理系统平台,快速学习的方法就是看看别人是如何做的,然后分析他们的得失作为自己的经验,借鉴网上的成品后,想点点人家的系统,他们的系统用的是sqlserver,想点他们的系统在本机必须要有sql环境支持,今天美美的睡了一觉后,心情大好,一切收拾完毕后开始了再一次的解决之旅。
【清除sql残留】
开篇小编已经说过,小编现在本机的sql是装也装不了、修复也不行、狠心写在也是不行,小编在询问大神之后,了解到网上有很多小工具可以清除sql卸载残留,经过百度后发现了一种windows installer cleanup, 安装后打开如下图所示,其中有几个按钮,select All,这是全选上边的所有注册项,Clear All,是删除上边的所有注册项,这个要慎点呀,要是点了,估计你就得重装系统了~~,今天小编遇到的这个问题是Sql的问题,现在我想要卸载干净,有两步:第一,在控制面板将sql有关的东西全部卸载,第二,用Windows installer cleanup将有关sql的Remove掉。这样我们就可以尝试重新安装sql了。
【安装过程出现could not open key...错误】
在清除完上述的sql残留后,开始安装,前两步都成功了,心里暗喜,应该成了吧。结果又出错了。
解决方案:一、管理员运行cmd 之后,输入secedit/configure/cfg %windir%/inf/defltbase.inf/db defltbase.sdb/verbose,可是小编尝试过后还是相同的问题。
二、出现这样的问题是因为之前电脑装过sql,现在出现了权限不够,所以要提升权限,打开注册表,找到以下目录:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Components
右键组件“Components”,选择权限“permissions”
点击高级“Advanced”
选择拥有者“Owner”标签
选择"Administrators(Group)"作为拥有者"Owner",然后点击应用 “Apply”
当选择复选框(Replace owner on sub containers and objects)后,再次点击应用返回之前的权限“Permissions”标签中选择复选框“Replace all child objects with inheritable permissions from this object”,然后再次点击应用
【总结】
上述解决方案中的第二种解决了小编的问题,不过在网上看大神有用第一种解决的, 所以都放在这,谁要是出现这样的问题可以两者都尝试一下,看来解决方法总比问题多一点也不假哈。