命令提示执行“pg_ctl”实用程序

时间:2018-04-13 07:47:28

标签: postgresql

C:\Program Files\PostgreSQL\10\bin>pg_ctl reload C:\Program Files\PostgreSQL\10\data 

运行此操作会出现错误

  

pg_ctl:命令行参数太多(首先是“C:\ Program”)。

2 个答案:

答案 0 :(得分:0)

您需要添加双引号,因为Program Files包含空格,而空格是参数之间的分隔符

C:\Program Files\PostgreSQL\10\bin>pg_ctl reload "C:\Program Files\PostgreSQL\10\data"

此外,从documentation开始,您似乎应该添加-D

C:\Program Files\PostgreSQL\10\bin>pg_ctl reload -D "C:\Program Files\PostgreSQL\10\data"

答案 1 :(得分:0)

pg_ctl --help显示:

pg_ctl is a utility to initialize, start, stop, or control a PostgreSQL server.

Usage:
  ...
  pg_ctl reload   [-D DATADIR] [-s]

这意味着必须使用-D开关指定数据目录。此外,由于空白,您需要引用目录名称:

pg_ctl reload -D "C:\Program Files\PostgreSQL\10\data"

不相关,但是:将应用程序数据存储在C:\Program Files中是一个非常糟糕的主意。功能