如何在Windows上启动PostgreSQL

时间:2016-04-14 17:25:35

标签: postgresql

我在Windows 10 PC上安装了Postgresql。我使用pgAdmin II工具创建了一个名为company的数据库,现在我想启动数据库服务器运行。我无法弄清楚如何做到这一点。  我在postgres命令行上运行了start命令,似乎没有任何事情发生。

我在做的是:

postgres=# pg_ctl start
postgres=# pg_ctl status
postgres=# pg_ctl restart
postgres=# pg_ctl start company
postgres=# pg_ctl status

.....->我什么都没看见。

11 个答案:

答案 0 :(得分:34)

pg_ctl是一个命令行(Windows)程序一个SQL语句。你需要从cmd.exe那样做。或者使用net start postgresql-9.5

enter image description here

如果您已通过安装程序安装了Postgres,则应启动Windows 服务,而不是手动运行pg_ctl,例如使用:

net start postgresql-9.5

请注意,您的安装中的服务名称可能有所不同。另一种选择是通过Windows控制面板启动服务

  

使用pgAdmin II工具创建了一个名为company 的数据库

这意味着Postgres已经在运行,所以我不明白为什么你认为你需要再次这样做。特别是因为安装程序通常将服务设置为在Windows启动时自动启动。

您没有看到任何结果的原因是psql要求每个 SQL 命令都以;终止,在您的情况下它只是等待您完成语句

请点击此处了解详情:In psql, why do some commands have no effect?

答案 1 :(得分:21)

经过大量的搜索和测试,我找到了解决方案: 如果你在Windows中:

1 - 首先你必须找到PG数据库目录     在pgAdmin查询工具中以sql命令执行命令

$ show data_directory;
  

结果:

------------------------
- D:/PG_DATA/data      -
------------------------

2 - 在我的情况下转到postgres的bin目录,它位于“c:/ programms / postgresSql / bin”

并打开命令提示符(CMD)并执行以下命令:

pg_ctl -D "D:\PSG_SQL\data" restart

这应该这样做。

答案 2 :(得分:19)

进入安装了Postgres的C盘中的bin文件夹。 在git bash或命令提示符下运行以下命令:

pg_ctl.exe restart -D "<path upto data>"

例如:

pg_ctl.exe restart -D  "C:\Program Files\PostgreSQL\9.6\data"

另一种方式: 在运行弹出窗口中键入“services.msc”(windows + R)。 这将显示正在运行的所有服务 从列表中选择Postgres服务,然后单击开始/停止/重新启动。

由于

答案 3 :(得分:7)

如果您已通过Windows安装程序安装了postgres,则可以像这样在Services中启动它:

enter image description here

答案 4 :(得分:1)

如果您收到错误“psql.exe”未被识别为内部或外部命令,...“

可以有: 原因

  • 系统无法找到psql.exe工具,因为未在系统环境变量PATH中指定此工具的路径

或 - 未在PC上安装PostgreSQL数据库客户端

由于您已经安装了PostgreSQL,后者不是问题(假设所有内容都按预期安装)

为了修复第一个“,请在PostgreSQL安装文件夹中指定bin目录的完整路径,此工具所在的位置。”

例如

路径:“C:\ Program Files \ PostgreSQL \ 10 \ bin”

答案 5 :(得分:0)

我发现使用

net start postgres_service_name

在Windows上运行Postgres的唯一可靠方法

答案 6 :(得分:0)

删除“ C:\ Program Files \ PostgreSQL \ 9.6 \ data”中的Postmaster文件

并重新启动PostgreSQL服务

答案 7 :(得分:0)

首先找到您的二进制文件保存在哪里。 获取终端矿的路径是

C:\ Users \ LENOVO \ Documents \ postgresql-9.5.21-1-windows-x64-binaries (1)\ pgsql \ bin

然后找到您的本地用户数据路径,该路径主要位于

C:\usr\local\pgsql\data

现在我们必须在二进制终端路径中击以下命令:

C:\ Users \ LENOVO \ Documents \ postgresql-9.5.21-1-windows-x64-binaries(1)\ pgsql \ bin> pg_ctl -D "C:\usr\local\pgsql\data" start

全部完成!

autovaccum启动器启动了!欢呼!

答案 8 :(得分:0)

有多种打开 PostgreSql 数据库的方法。 1> 其中之一是通过 windows 并选择 pgAdmin4 或 pgAdmin3 取决于您使用的版本并输入密码您可以访问您的数据库。

2> 另一种是通过终端: 为了能够从终端中进行选择,您必须通过转到环境变量来添加已安装的 postgresql 的路径。要做到这一点,必须安装 postgresql 文件并选择 bin 的路径并添加到窗口设置的环境变量中。 之后你可以在终端输入:psql -U postgres -h localhost

按回车键,它会问你密码。提供密码后,您可以创建数据库和表并可以访问它。enter image description here

enter image description here

答案 9 :(得分:0)

对于 Windows,以下命令对我来说效果很好

pg_ctl.exe restart -D ""

例如:pg_ctl.exe restart -D "D:\Program Files\PostgreSQL\13\data"

enter image description here

答案 10 :(得分:-1)

启用 pg_ctl 命令的最简单方法是转到您的 PostgreSQL 目录 ~\PostgreSQL\version\bin\ 并执行 pg_ctl.exe。之后 pg_ctl 命令将可用。