postgres安装数据库集群初始化失败(Postgresql Version 9.4.4)
postgres installation the database cluster initialization failed ( Postgresql Version 9.4.4 )
我无法安装 Postgresql。我已经尝试了一切:
- 我运行设置为管理员。
- 我创建了一个 postgresql 用户并将其添加到管理员组。
- 我直接安装在C:\postgresql.
但没有任何成功。
供参考:我有 windows 8
已解决的问题:
运行 设置为管理员并使用 Windows 7 模式
- 首先运行设置为管理员。
- 选择program files里面的安装文件夹(默认)
- 但是选择了你的数据位置从上面的文件夹到某个地方
else ( c:\postgres data 或其他东西。)
我正在安装 Postgres 版本 9.5(在 windows 7 上并使用 DBEnterprise 安装程序)...对我来说,问题似乎是我选择 "POSIX" 作为区域配置。 .. 但我尝试使用 "C" 区域配置,安装完成没有任何问题...
此外,我 运行 安装程序作为管理员!
只是不要使用 EDB 安装程序。现在有 BigSQL 替代品。
10.3 的可能解决方案。版本:
将下载的文件移动到 C:\ 驱动器。
示例:C:\postgresql-10.3-2-windows-x64.exe
在C:\ drive
中创建名为PostgreSQL的目录
在之前创建的 PostgreSQL 目录中创建名为 10 的目录。
所以你需要 C:\PostgreSQL.
运行 C:\postgresql-10.3-2-windows-x64.exe (不要点击 'RUN AS ADMIN',只需双击)
将安装目录路径更改为C:\PostgreSQL
将数据目录路径更改为C:\PostgreSQL\data
完成
希望安装成功。
现在是 2019,我仍然遇到与 Postgres 11 相同的问题。在此之前,我删除了当前的 Postgres 9.6(如果我没记错的话),并尝试安装新的 Postgres 11,并遇到了问题。我尝试了以下这些方法,但其中 none 有效:
- Run installation as Administrator on every run -> failed
- Choose the default installation folder that the setup prompted (C:/Program Files/PostgresSQL/11), and the data folder reside at other
place -> failed
- Install it on a place outside C:/ -> still failed
我几乎整天挠头后幸运地找到的唯一方法就是这个 post
我想快速回顾一下解决方案,以防 link 过期
Solution:
- Uninstall PostgreSQL
- CMD: net user postgres /delete
- Control Panel -> User Accounts -> Configure advanced user profile properties -> delete all "Unknown User" instances that seem to be left from postgres
- Run > compmgmt.msc -> Local Users and Groups -> Users -> New User... -> User name: postgres, Password: postgres -> Create
- compmgmt.msc -> Local Users and Groups -> Users -> postgres -> Member of -> Add... -> Administrators -> OK
- copy postgresql-8.4.9-1-windows.exe to C:\
- runas /user:postgres cmd.exe -> cd \ -> postgresql-8.4.9-1-windows.exe -> installed successfully without errors. Checked data folder and confirmed files created successfully. (this mean you must run the installation with the created postgres user)
- compmgmt.msc -> Local Users and Groups -> Users -> postgres -> Member of -> Administrators -> Remove
- compmgmt.msc -> Local Users and Groups -> Users -> postgres -> Member of -> Add... -> Power Users -> OK
- Installed HM2 -> created db successfully
- Restarted computer -> HM2 runs properly (i.e. just to check postgresql service starts automatically)
专业提示:
要深入了解 installation log,请通过在任务栏中搜索“%TEMP%”转到 %TEMP% 文件夹,日志名称将为 bitrock_installer-xxx.log
。您想知道发生了什么以便更快地解决问题。
我在尝试安装 postgres 10 时遇到了同样的问题。3.Running 因为管理员没有帮助我。但是当我将安装目录从 Program Files.Instead 中的默认安装目录更改为正确安装时,我在 C 盘中创建了一个新文件夹并将其作为安装目录。
我按照@IsoNecroMad 建议的步骤进行了操作
1) 首先,运行设置为管理员。
2) 选择program files里面的安装文件夹(默认)
3) 但是选择你的数据位置从上面的文件夹到其他地方(c:\postgres 数据或其他东西。)
我试了好几次都失败了,我认为这与安装过程中使用的权限和用户有关。但多亏了 ThangLeQuoc 的专业提示检查安装日志,我找到了原因:
initdb: invalid locale name "NorwegianBokm†l,Norway"
Called Die(Failed to initialise the database cluster with initdb)...
Failed to initialise the database cluster with initdb
所以在安装过程中选择'default locale'后一切顺利。
这是在版本 11.6 os Postgres.
我遇到了同样的错误,但有不同的潜在问题(不是用户权限问题,而是语言环境问题)。
此处描述了此问题的解决方案:
对我来说,这里提到的每一个解决方案每次都失败了。然后在我自己做了一些研发之后,我能够成功地使用 postgresql。下面提到的是遇到此错误时要遵循的步骤“数据库集群初始化失败”
您必须手动 运行 存在的 initdb:“C:\Software\PostgreSql\bin”
现在确保将“postgres”作为用户与 initdb cmd 相关联,因为“postgres”是在安装期间创建的超级用户。
initdb -D "D:\PostgreSql\data" -U postgres
现在,一旦数据库集群初始化完成,您就可以使用 PostgreSql
的 bin 文件夹中的 pg_ctl 实用程序启动服务器
pg_ctl start -D "D:\PostgreSql\data"
或者您也可以将其注册为windows服务,您可以将其设置为自动
pg_ctl register -N PostgreSql-12.3.1 -D "D:\PostgreSql\data"
现在您已准备好使用 postgresql 数据库。
通过命令行 (psql) 或 pgAdmin4
使用它
解决此问题的另一种方法是更改操作系统(机器)的区域(语言)。
例如,如果您选择法语,请从法国学习法语,而不是当地的法语。英语也一样,不是本地英语。有些字符不适用于当地语言。
我认为它会解决您的问题。
现在是 2021 年,我收到了 PostgreSQL 13(和官方 EDB 安装程序)的错误消息:“问题 运行 post-安装步骤。安装可能无法正确完成。数据库集群初始化失败。"
原因是我试图将 PostgreSQL 安装到 U 盘上
使用 FAT32 格式化(我只是想尝试一下,而不是将其用于重要的
数据)。虽然可以将程序存储在 USB 记忆棒 (573 MB) 上,
数据目录必须位于使用 NTFS 格式化的内部磁盘上。
我尝试直接(在 USB 记忆棒上)使用 initdb,但出现无法创建链接的错误消息。这可能解释了为什么数据目录不能使用 FAT32 格式。
我在 Windows 上遇到了与 PostgreSQL 13.4 相同的问题,问题是 post 安装脚本 initcluster.vbs 是在没有最后一个参数的情况下 运行。我从 install-postgresql.log 文件中复制了命令,并尝试在命令 window 中对它进行 运行 并收到以下消息:
Usage: initcluster.vbs <OSUsername> <SuperUsername> <Password> <PasswordDir> <Install dir> <Data dir> <Port> <Locale> <CheckACL>
我查看了我尝试执行的命令 运行,它完全缺少 参数。我重试了添加 true 作为最后一个参数的命令,它 运行 成功了。完成脚本后,我 运行 从 c:\Program Files\PostgreSQL\bin 文件夹中执行以下命令:
pg_ctl register -N PostgreSql-13.4 -D "<my data directory>"
这将其注册为自动启动服务。我转到 Windows 服务应用程序并启动了它。之后我就可以使用 pgAdmin 4 进行连接了。
运行 WSL 上的 PostgreSQL(Windows Linux 的子系统)并在 Windows.
上连接到它
以管理员身份打开 Windows Terminal/PowerShell(右键单击 Windows 11 上的开始图标 -> Windows 终端(管理员)。键入:
wsl --install
重新启动计算机。登录后 Ubuntu 将自动安装,WSL2 和 Ubuntu 是 Windows 上的标准配置 11. 按照说明输入您想要的用户名和密码。
更新Ubuntu:
sudo apt update && sudo apt upgrade
安装 PostgreSQL:
sudo apt install postgresql
给 'postgres' 用户一个密码:
sudo passwd postgres
启动服务并打开psql shell:
sudo service postgresql start && sudo -u postgres psql
注意你创建的密码不是 postgres 的数据库密码,所以除非你创建一个新用户,否则你可以在 psql shell:
中给 postgres 一个
ALTER USER postgres PASSWORD 'mypw';
现在您可以安装 pgAdmin 或使用您自己的程序(在 'normal' Windows 中)以确认您可以在 127.0.0.1 上使用端口 5432(可能不同)与用户 postgres 和他的密码。
!!!
你不需要安装在任何特殊的地方
如果遇到此问题,请尝试:
1,除了根文件夹之外,没有设置数据文件夹,虽然它是默认的
2、检查你的杀毒软件,比如360
我无法安装 Postgresql。我已经尝试了一切:
- 我运行设置为管理员。
- 我创建了一个 postgresql 用户并将其添加到管理员组。
- 我直接安装在C:\postgresql.
但没有任何成功。 供参考:我有 windows 8
已解决的问题:
运行 设置为管理员并使用 Windows 7 模式
- 首先运行设置为管理员。
- 选择program files里面的安装文件夹(默认)
- 但是选择了你的数据位置从上面的文件夹到某个地方 else ( c:\postgres data 或其他东西。)
我正在安装 Postgres 版本 9.5(在 windows 7 上并使用 DBEnterprise 安装程序)...对我来说,问题似乎是我选择 "POSIX" 作为区域配置。 .. 但我尝试使用 "C" 区域配置,安装完成没有任何问题...
此外,我 运行 安装程序作为管理员!
只是不要使用 EDB 安装程序。现在有 BigSQL 替代品。
10.3 的可能解决方案。版本:
将下载的文件移动到 C:\ 驱动器。
示例:C:\postgresql-10.3-2-windows-x64.exe在C:\ drive
中创建名为PostgreSQL的目录
在之前创建的 PostgreSQL 目录中创建名为 10 的目录。
所以你需要 C:\PostgreSQL.运行 C:\postgresql-10.3-2-windows-x64.exe (不要点击 'RUN AS ADMIN',只需双击)
将安装目录路径更改为C:\PostgreSQL
将数据目录路径更改为C:\PostgreSQL\data
完成
希望安装成功。
现在是 2019,我仍然遇到与 Postgres 11 相同的问题。在此之前,我删除了当前的 Postgres 9.6(如果我没记错的话),并尝试安装新的 Postgres 11,并遇到了问题。我尝试了以下这些方法,但其中 none 有效:
- Run installation as Administrator on every run -> failed
- Choose the default installation folder that the setup prompted (C:/Program Files/PostgresSQL/11), and the data folder reside at other place -> failed
- Install it on a place outside C:/ -> still failed
我几乎整天挠头后幸运地找到的唯一方法就是这个 post
我想快速回顾一下解决方案,以防 link 过期
Solution:
- Uninstall PostgreSQL
- CMD: net user postgres /delete
- Control Panel -> User Accounts -> Configure advanced user profile properties -> delete all "Unknown User" instances that seem to be left from postgres
- Run > compmgmt.msc -> Local Users and Groups -> Users -> New User... -> User name: postgres, Password: postgres -> Create
- compmgmt.msc -> Local Users and Groups -> Users -> postgres -> Member of -> Add... -> Administrators -> OK
- copy postgresql-8.4.9-1-windows.exe to C:\
- runas /user:postgres cmd.exe -> cd \ -> postgresql-8.4.9-1-windows.exe -> installed successfully without errors. Checked data folder and confirmed files created successfully. (this mean you must run the installation with the created postgres user)
- compmgmt.msc -> Local Users and Groups -> Users -> postgres -> Member of -> Administrators -> Remove
- compmgmt.msc -> Local Users and Groups -> Users -> postgres -> Member of -> Add... -> Power Users -> OK
- Installed HM2 -> created db successfully
- Restarted computer -> HM2 runs properly (i.e. just to check postgresql service starts automatically)
专业提示:
要深入了解 installation log,请通过在任务栏中搜索“%TEMP%”转到 %TEMP% 文件夹,日志名称将为 bitrock_installer-xxx.log
。您想知道发生了什么以便更快地解决问题。
我在尝试安装 postgres 10 时遇到了同样的问题。3.Running 因为管理员没有帮助我。但是当我将安装目录从 Program Files.Instead 中的默认安装目录更改为正确安装时,我在 C 盘中创建了一个新文件夹并将其作为安装目录。
我按照@IsoNecroMad 建议的步骤进行了操作
1) 首先,运行设置为管理员。
2) 选择program files里面的安装文件夹(默认)
3) 但是选择你的数据位置从上面的文件夹到其他地方(c:\postgres 数据或其他东西。)
我试了好几次都失败了,我认为这与安装过程中使用的权限和用户有关。但多亏了 ThangLeQuoc 的专业提示检查安装日志,我找到了原因:
initdb: invalid locale name "NorwegianBokm†l,Norway"
Called Die(Failed to initialise the database cluster with initdb)...
Failed to initialise the database cluster with initdb
所以在安装过程中选择'default locale'后一切顺利。 这是在版本 11.6 os Postgres.
我遇到了同样的错误,但有不同的潜在问题(不是用户权限问题,而是语言环境问题)。
此处描述了此问题的解决方案:
对我来说,这里提到的每一个解决方案每次都失败了。然后在我自己做了一些研发之后,我能够成功地使用 postgresql。下面提到的是遇到此错误时要遵循的步骤“数据库集群初始化失败”
您必须手动 运行 存在的 initdb:“C:\Software\PostgreSql\bin”
现在确保将“postgres”作为用户与 initdb cmd 相关联,因为“postgres”是在安装期间创建的超级用户。
initdb -D "D:\PostgreSql\data" -U postgres
现在,一旦数据库集群初始化完成,您就可以使用 PostgreSql
的 bin 文件夹中的 pg_ctl 实用程序启动服务器pg_ctl start -D "D:\PostgreSql\data"
或者您也可以将其注册为windows服务,您可以将其设置为自动
pg_ctl register -N PostgreSql-12.3.1 -D "D:\PostgreSql\data"
现在您已准备好使用 postgresql 数据库。 通过命令行 (psql) 或 pgAdmin4
使用它解决此问题的另一种方法是更改操作系统(机器)的区域(语言)。 例如,如果您选择法语,请从法国学习法语,而不是当地的法语。英语也一样,不是本地英语。有些字符不适用于当地语言。 我认为它会解决您的问题。
现在是 2021 年,我收到了 PostgreSQL 13(和官方 EDB 安装程序)的错误消息:“问题 运行 post-安装步骤。安装可能无法正确完成。数据库集群初始化失败。"
原因是我试图将 PostgreSQL 安装到 U 盘上 使用 FAT32 格式化(我只是想尝试一下,而不是将其用于重要的 数据)。虽然可以将程序存储在 USB 记忆棒 (573 MB) 上, 数据目录必须位于使用 NTFS 格式化的内部磁盘上。 我尝试直接(在 USB 记忆棒上)使用 initdb,但出现无法创建链接的错误消息。这可能解释了为什么数据目录不能使用 FAT32 格式。
我在 Windows 上遇到了与 PostgreSQL 13.4 相同的问题,问题是 post 安装脚本 initcluster.vbs 是在没有最后一个参数的情况下 运行。我从 install-postgresql.log 文件中复制了命令,并尝试在命令 window 中对它进行 运行 并收到以下消息:
Usage: initcluster.vbs <OSUsername> <SuperUsername> <Password> <PasswordDir> <Install dir> <Data dir> <Port> <Locale> <CheckACL>
我查看了我尝试执行的命令 运行,它完全缺少
pg_ctl register -N PostgreSql-13.4 -D "<my data directory>"
这将其注册为自动启动服务。我转到 Windows 服务应用程序并启动了它。之后我就可以使用 pgAdmin 4 进行连接了。
运行 WSL 上的 PostgreSQL(Windows Linux 的子系统)并在 Windows.
上连接到它以管理员身份打开 Windows Terminal/PowerShell(右键单击 Windows 11 上的开始图标 -> Windows 终端(管理员)。键入:
wsl --install
重新启动计算机。登录后 Ubuntu 将自动安装,WSL2 和 Ubuntu 是 Windows 上的标准配置 11. 按照说明输入您想要的用户名和密码。
更新Ubuntu:
sudo apt update && sudo apt upgrade
安装 PostgreSQL:
sudo apt install postgresql
给 'postgres' 用户一个密码:
sudo passwd postgres
启动服务并打开psql shell:
sudo service postgresql start && sudo -u postgres psql
注意你创建的密码不是 postgres 的数据库密码,所以除非你创建一个新用户,否则你可以在 psql shell:
中给 postgres 一个ALTER USER postgres PASSWORD 'mypw';
现在您可以安装 pgAdmin 或使用您自己的程序(在 'normal' Windows 中)以确认您可以在 127.0.0.1 上使用端口 5432(可能不同)与用户 postgres 和他的密码。
!!! 你不需要安装在任何特殊的地方
如果遇到此问题,请尝试: 1,除了根文件夹之外,没有设置数据文件夹,虽然它是默认的 2、检查你的杀毒软件,比如360