Thread: unbale to use pg_ctl in Windows Cmd.

unbale to use pg_ctl in Windows Cmd.

From
mark armon
Date:
pg_ctl status
pg_ctl: no database directory specified and environment variable PGDATA unset
Try "pg_ctl --help" for more information.

C:\Users\Think>pg_ctl --help
pg_ctl is a utility to initialize, start, stop, or control a PostgreSQL server.
 
I don't know where the pg_data directory. So I set the C:\Users\Think\Desktop\postgres\data as user variable and system variable In windows setting. But still not working. In the bin directory, there is pg_ctl.exe file.


Re: unbale to use pg_ctl in Windows Cmd.

From
Scott Ribe
Date:
> On Dec 5, 2020, at 10:02 AM, mark armon <1994hejian@gmail.com> wrote:
>
> I don't know where the pg_data directory.

You will have to find it to use pg_ctl

> So I set the C:\Users\Think\Desktop\postgres\data as user variable and system variable In windows setting.

Doesn't do any good if that's not where the data directory is.


Re: unbale to use pg_ctl in Windows Cmd.

From
Ron
Date:
On 12/5/20 11:02 AM, mark armon wrote:
pg_ctl status
pg_ctl: no database directory specified and environment variable PGDATA unset
Try "pg_ctl --help" for more information.

C:\Users\Think>pg_ctl --help
pg_ctl is a utility to initialize, start, stop, or control a PostgreSQL server.
 
I don't know where the pg_data directory. So I set the C:\Users\Think\Desktop\postgres\data as user variable and system variable In windows setting. But still not working. In the bin directory, there is pg_ctl.exe file.

Randomly deciding on a directory because you don't know where the data actually is doesn't work.  You need to know where the data is.

--
Angular momentum makes the world go 'round.

Re: unbale to use pg_ctl in Windows Cmd.

From
Paul Förster
Date:
Hi Mark, hi Ron,

> On 05. Dec, 2020, at 22:22, Ron <ronljohnsonjr@gmail.com> wrote:
>
> On 12/5/20 11:02 AM, mark armon wrote:
>> pg_ctl status
>> pg_ctl: no database directory specified and environment variable PGDATA unset
>> Try "pg_ctl
>> --help" for more information.
>>
>>
>> C:\Users\Think>pg_ctl
>> --help
>>
>> pg_ctl is a utility to initialize,
>> start, stop, or control a PostgreSQL server.
>>
>> I don't know where the pg_data directory. So I set the C:\Users\Think\Desktop\postgres\data as user variable and
systemvariable In windows setting. But still not working. In the bin directory, there is pg_ctl.exe file. 
>
> Randomly deciding on a directory because you don't know where the data actually is doesn't work.  You need to know
wherethe data is. 

maybe this helps with locating PGDATA. If you can connect you can ask the database where PGDATA is:

postgres=# show data_directory;
   data_directory
---------------------
 /data/pg01/sdb01/db
(1 row)

Cheers,
Paul


Re: unbale to use pg_ctl in Windows Cmd.

From
Ron
Date:
On 12/5/20 3:40 PM, Paul Förster wrote:
> Hi Mark, hi Ron,
>
>> On 05. Dec, 2020, at 22:22, Ron <ronljohnsonjr@gmail.com> wrote:
>>
>> On 12/5/20 11:02 AM, mark armon wrote:
>>> pg_ctl status
>>> pg_ctl: no database directory specified and environment variable PGDATA unset
>>> Try "pg_ctl
>>> --help" for more information.
>>>
>>>
>>> C:\Users\Think>pg_ctl
>>> --help
>>>
>>> pg_ctl is a utility to initialize,
>>> start, stop, or control a PostgreSQL server.
>>>   
>>> I don't know where the pg_data directory. So I set the C:\Users\Think\Desktop\postgres\data as user variable and
systemvariable In windows setting. But still not working. In the bin directory, there is pg_ctl.exe file.
 
>> Randomly deciding on a directory because you don't know where the data actually is doesn't work.  You need to know
wherethe data is.
 
> maybe this helps with locating PGDATA. If you can connect you can ask the database where PGDATA is:
>
> postgres=# show data_directory;
>     data_directory
> ---------------------
>   /data/pg01/sdb01/db
> (1 row)

Using Cortana (or good old "DIR/S") to find PG_VERSION should work. I'd be 
shocked if it didn't...

-- 
Angular momentum makes the world go 'round.



Re: unbale to use pg_ctl in Windows Cmd.

From
mark armon
Date:

Problem resolved. But I just don’t know why.
So I need to add the data directory. like pg_ctl status -D 'C:\Program Files\PostgreSQL\13\data'



On Sat, Dec 5, 2020 at 10:54 PM Scott Ribe <scott_ribe@elevated-dev.com> wrote:
> On Dec 5, 2020, at 10:02 AM, mark armon <1994hejian@gmail.com> wrote:
>
> I don't know where the pg_data directory.

You will have to find it to use pg_ctl

> So I set the C:\Users\Think\Desktop\postgres\data as user variable and system variable In windows setting.

Doesn't do any good if that's not where the data directory is.

Re: unbale to use pg_ctl in Windows Cmd.

From
Ron
Date:
You've got to do it because Postgresql requires you to.

Or you could set PGDATA=C:\Program Files\PostgreSQL\13\data'and run pg_ctl status, just like the error message aid.

On 12/6/20 2:02 AM, mark armon wrote:

Problem resolved. But I just don’t know why.
So I need to add the data directory. like pg_ctl status -D 'C:\Program Files\PostgreSQL\13\data'



On Sat, Dec 5, 2020 at 10:54 PM Scott Ribe <scott_ribe@elevated-dev.com> wrote:
> On Dec 5, 2020, at 10:02 AM, mark armon <1994hejian@gmail.com> wrote:
>
> I don't know where the pg_data directory.

You will have to find it to use pg_ctl

> So I set the C:\Users\Think\Desktop\postgres\data as user variable and system variable In windows setting.

Doesn't do any good if that's not where the data directory is.

--
Angular momentum makes the world go 'round.