无法重新安装PostgreSQL,因为Windows认为它仍然安装

时间:2016-03-30 09:03:01

标签: postgresql windows-10 uninstall

我已经安装了PostgreSQL,但我想将它重新安装到另一个目录。所以我已经卸载了它,当我执行安装程序时,我得到了:

  

在C:\ Program Files(x86)\ PostgreSQL \ 9.1中找到了现有的PostgreSQL安装。此安装将升级。

我将补充一点,我没有从控制面板中添加/删除程序卸载PostgreSQL,因为我收到了法语错误所以我只删除了主目录,然后将其从控制面板中删除。

我还删除了使用PostgreSQL的HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\postgresql-9.1和WampServer(以防万一)。我在regedit中找不到任何其他键,因为搜索是永远的(并且我认为它被窃听)。我摆脱了目录C:\Users\<username>\AppData\Roaming\postgresqlC:\USers\postgresql

也许它与Visual Studio有关,因为当我运行安装程序时,我简要地得到一个窗口: enter image description here

2 个答案:

答案 0 :(得分:2)

我终于做到了。我不得不删除注册表中的所有密钥。 似乎很明显,对吧? 但Win10 Regedit被窃听,如果有超过255个字符的密钥,它会进入无限循环。我找不到解决方法了。

因此,其中一个解决方案是下载Regscanner,搜索&#34; postgre&#34;和&#34; pgadmin&#34;并删除所有条目,但使用Regedit。我的意思是,你也可以使用Regscanner,但我更喜欢使用原生工具删除密钥。但是,它要慢得多,因为你必须手动找到所有键。

答案 1 :(得分:1)

即使已经有解决方案,但我仍在记录要在Windows Server 2016上完成完全手动卸载所必须采取的步骤:

  1. 使用“以管理员身份运行”打开CMD窗口

  2. sc query postgresql-9.1sc query postgresql-x64-9.1,将其用于步骤3和4。

  3. 如果STATE正在运行,则执行:sc stop postgresql-9.1

  4. sc delete postgresql-9.1

  5. 使用文件资源管理器,找到postgres软件目录,可能是“ c:\ Program Files(x86)\ PostgreSQL \” ...右键单击它,然后单击属性,安全性,所有权,取得所有权,确定好。然后删除此文件夹及其中的所有内容。

  6. 使用文件资源管理器找到postgres数据目录。有时它与第5步位于同一目录中,而有时它位于类似D:\ postgres \ data

  7. 的目录中。
  8. net user postgres /delete

  9. Windows键+ r打开运行提示。键入regedit

  10. 滚动到HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node和/或HKEY_LOCAL_MACHINE\SOFTWARE

  11. 删除两个带有PostgreSQL单词的文件夹