Win11 安装 PostgreSQL 报错解决方案

server/2024/10/23 22:16:29/

一、问题概述

在 Win11 系统中安装 PostgreSQL 时,可能会遇到“Problem running post-install”的报错情况。这一报错给用户带来了极大的困扰,使得安装过程无法顺利进行。

二、报错原因分析

(一)权限不足问题

在 Win11 中,安装后系统用户可能没有安装文件夹内程序的执行权限。这会导致无法初始化数据和注册服务。此外,使用 Microsoft 账号登录系统时,可能会处于非超级管理员状态,从而无法创建用户,进一步影响数据库的安装。

(二)安装包问题

安装包可能存在问题,无法自动创建 postgres 用户,这可能导致“Failed to load sql modules into the database cluster”报错。

三、解决方案详解

(一)添加权限步骤

  1. 找到 PostgreSQL 的安装文件夹。
  2. 右键点击安装文件夹,选择“属性”。
  3. 在“属性”窗口中,选择“安全”选项卡。
  4. 点击“编辑”按钮,添加“Users”用户组,并赋予完全控制权限。确保对安装目录和所有子文件夹都有完全控制权限。
  5. 在带有版本号的文件夹上再次验证用户权限是否正确设置。

(二)创建用户及设置权限

  1. 在 Win11 系统中创建一个名为“postgres”的用户。
    • 打开“控制面板”->“用户账户”->“用户账户”->“管理其他账户”。
    • 点击“添加用户”,输入用户名“postgres”,并设置密码。
  2. 将“postgres”用户添加到管理员群组和“Power Users”群组。
    • 打开“控制面板”->“管理工具”->“计算机管理”。
    • 在“计算机管理”窗口中,选择“本地用户和组”->“组”。
    • 分别找到“Administrators”和“Power Users”组,右键点击选择“属性”。
    • 在“属性”窗口中,点击“添加”按钮,输入“postgres”用户,点击“确定”。
  3. 设置“postgres”用户对 PostgreSQL 安装文件夹的完全控制权限。
    • 回到 PostgreSQL 安装文件夹的“属性”窗口,选择“安全”选项卡。
    • 点击“编辑”按钮,添加“postgres”用户,并赋予完全控制权限。

(三)初始化及注册服务

  1. 以管理员身份运行命令提示符(CMD)。
    • 在开始菜单中搜索“CMD”,右键点击“命令提示符”,选择“以管理员身份运行”。
  2. 切换到 PostgreSQL 安装目录下的“bin”文件夹。
    • 例如,如果安装在“C:\Program Files\PostgreSQL\14\bin”,则在命令提示符中输入:
cd C:\Program Files\PostgreSQL\14\bin
  1. 执行初始化数据库命令。
    • 输入:
initdb.exe -D data

(这里的“data”是数据库的数据存储目录,可以根据实际情况进行修改)。
4. 注册数据库服务。
- 输入:

pg_ctl register -N PostgreSQL -D data

(同样,“data”是数据存储目录)。

(四)启动及常用命令

  1. 在 Windows 服务面板中启动注册的 PostgreSQL 服务。
    • 打开“控制面板”->“管理工具”->“服务”。
    • 找到“PostgreSQL”服务,右键点击选择“启动”。
  2. 常用命令:
    • 启动服务:
pg_ctl start -D data
- 停止服务:
pg_ctl stop -D data
- 删除服务:
pg_ctl unregister -N PostgreSQL

四、总结归纳

通过以上方法,可以有效解决 Win11 安装 PostgreSQL 时出现的“Problem running post-install”报错问题。虽然过程可能较为复杂,但只要按照步骤操作,就能顺利安装和使用 PostgreSQL 数据库在操作过程中,一定要仔细检查每一步的设置,确保权限正确分配,用户正确创建和添加到相应群组。


http://www.ppmy.cn/server/134271.html

相关文章

windows免密ssh登录Linux

1.winr打开运行---- 输入:cmd(命令提示符) 查看系统是否自带openssh ssh -V 2.生成公钥私钥文件 ssh-keygen 3.进入秘钥存放目录 cd C:\Users\admin/.ssh/#查看秘钥文件 dir 4.将公钥文件长传至Linux服务器 scp .\id_rsa.pub root20.20.…

计算机网络基本架构实例1

家庭网络 1. 终端设备: - 家庭中的台式电脑、笔记本电脑、智能手机、平板电脑、智能电视等设备,用于上网、娱乐、学习等。 2. 通信链路: - 一般采用光纤接入互联网,通过光猫将光信号转换为电信号,然后连接到无线路由…

Linux 防火墙的开启、关闭、禁用命令

Linux 防火墙的开启、关闭、禁用命令 文章目录 Linux 防火墙的开启、关闭、禁用命令1.设置开机启用防火墙2.设置开机禁用防火墙3.启动防火墙4.关闭防火墙5.检查防火墙状态 1.设置开机启用防火墙 systemctl enable firewalld.service2.设置开机禁用防火墙 systemctl disable f…

深度学习——线性神经网络(三、线性回归的简洁实现)

目录 3.1 生成数据集3.2 读取数据集3.3 定义模型3.4 初始化模型参数3.5 定义损失函数3.6 定义优化算法3.7 训练 在上一节中,我们通过张量来自定义式地进行数据存储和线性代数运算,并通过自动微分来计算梯度。实际上,由于数据迭代器、损失函数…

首发Dell R730xd安装VMware Esxi 7.0U2A

哈喽大家好,欢迎来到虚拟化时代君(XNHCYL)。 “ 大家好,我是虚拟化时代君,一位潜心于互联网的技术宅男。这里每天为你分享各种你感兴趣的技术、教程、软件、资源、福利…(每天更新不间断,福利…

从零开始学PHP之安装开发环境

前言 不整那些虚的,直接开始上干货,争取让小白也看得懂 环境选择 php开发环境一般分为集成环境和编译环境,由于编辑环境费时费力(我没搞明白)直接使用集成环境,市面上php的集成环境很多我这里用的是phps…

自己如何制作一个简单的成绩查询系统?

霜降过后,期中考试季又到了,感觉时间就像被抽水马桶冲走一样,转眼就忙得不可开交。家长们忙着联系老师,孩子们忙着找借口,而您,可能正忙着统计那一串串让人头疼的分数。其实大可不必那么劳累自己&#xff0…

Field injection is not recommended – Spring IOC

在运行静态代码分析工具或从IDE检查/分析代码时,你可能会遇到以下关于Autowired字段的警告:Field injection is not recommended 一、Spring IOC的注入类型有三种 基于构造函数的依赖注入;基于Setter的依赖注入;基于字段的依赖注…