Tags: 1-rc1, alternative, cmd, cygwin, database, exe, hate, ilike, installed, instead, machine, mysql, native, oracle, postgresql, psql, psqlexe, puttycyg, sql, terminal, win32, windows

Using native win32 psql.exe using alternative cygwin terminal

On Database » PostgreSQL

6,529 words with 1 Comments; publish: Tue, 20 May 2008 01:52:00 GMT; (250140.63, « »)

I just installed PostgreSQL 8.1-rc1 on a Windows 2003 machine. Since I

like psql a lot, and hate the cmd.exe terminal, I use puttycyg instead.

When I tried using psql.exe in a puttycyg terminal, after entering my

password for the database, the screen just "hangs". When I do the same

from a cygwin cmd.exe terminal, everything works. Another detail: the

password using cmd.exe is hidden, using puttycyg it is shown.

The exact same behaviour is shown when using the OpenSSH daemon (under

cygwin) and logging in to it from remote (putty client or OpenSSH client).

It looks like there is a problem with the interactive mode. When I run:

psql -d postgres -c 'select * from pg_tables limit 1;'

the output is shown just fine. I tried different TERM settings, but they

made no difference.

Is there something I can do to make this combination work? I'd gladly do

more tests..

Sincerely,

Richard van den Berg, CISSP

---

Trust Factory B.V. | www.dna-portal.net

Bazarstraat 44a | www.trust-factory.com

2518AK The Hague | Phone: +31 70 3620684

The Netherlands | Fax : +31 70 3603009

---

--(end of broadcast)--

TIP 1: if posting/reading through Usenet, please send an appropriate

subscribe-nomail command to majordomo.postgresql.questionfor.info.postgresql.org so that your

message can get through to the mailing list cleanly

All Comments

Leave a comment...

  • 1 Comments
    • I hit this exact same problem, and my initial reaction was the same as

      yours -- psql was "hanging". After much head-banging, I discovered that

      it is not in fact hanging, but is instead getting confused by being run

      from inside Putty, Cygwin, xterm, rxvt terminal, etc. Because psql is

      not being run from a native Win32 console window, it puts itself into

      non-interactive mode, so it shows no prompts, allows no line editing,

      shows no command history, etc. But it is actually running. (And I

      couldn't find any combination of TERM settings, security settings or any

      other settings that would get around this.)

      Unfortunately, at the moment there is no command-line flag to force psql

      into "interactive" mode. I have the code (courtesy of Bruce Momjian) to

      add a flag such as this, but I haven't had time to set up the

      environment to actually recompile psql.

      Alternatively, you can run Cygwin's version of psql against the native

      Win32 PostgreSQL 8 database, assuming you install the base Cygwin

      environment. This does work fine, and gives you the added benefit of

      including "readline" support (something compiled out of the native Win32

      version of psql), so tab-completion works even in the Windows

      environment. Two caveats, however:

      1) You can't install _just_ psql from the Cygwin setup -- you'll have to

      install the complete PostgreSQL environment (database and all), then

      copy just the psql-related files (psql.exe and pq.dll) to your

      workstation. (So be sure to NOT install this on your main PostgreSQL

      server -- no telling what will happen when the Cygwin version of the

      PostgreSQL server tries to run at the same time as the native Win32

      version already on there.)

      2) The latest "release" version of PostgreSQL for Cygwin is v7.4.5.

      There is v8.x code available in CVS, but you'll have to compile it

      yourself. I'm also planning on doing this too, but I haven't had the

      time.

      - Bill

      Bill Bartlett

      meridianEMR, Inc.

      http://www.meridianemr.com/

      > --Original Message--

      > From: pgsql-general-owner.postgresql.questionfor.info.postgresql.org

      > [mailto:pgsql-general-owner.postgresql.questionfor.info.postgresql.org] On Behalf Of

      > Richard van den Berg

      > Sent: Friday, November 04, 2005 5:51 AM

      > To: pgsql-general.postgresql.questionfor.info.postgresql.org

      > Subject: [GENERAL] Using native win32 psql.exe using

      > alternative cygwin terminal

      >

      > I just installed PostgreSQL 8.1-rc1 on a Windows 2003

      > machine. Since I like psql a lot, and hate the cmd.exe

      > terminal, I use puttycyg instead.

      > When I tried using psql.exe in a puttycyg terminal, after

      > entering my password for the database, the screen just

      > "hangs". When I do the same from a cygwin cmd.exe terminal,

      > everything works. Another detail: the password using cmd.exe

      > is hidden, using puttycyg it is shown.

      > The exact same behaviour is shown when using the OpenSSH daemon (under

      > cygwin) and logging in to it from remote (putty client or

      > OpenSSH client).

      > It looks like there is a problem with the interactive mode.

      > When I run:

      > psql -d postgres -c 'select * from pg_tables limit 1;'

      > the output is shown just fine. I tried different TERM

      > settings, but they made no difference.

      > Is there something I can do to make this combination work?

      > I'd gladly do more tests..

      > Sincerely,

      > --

      > Richard van den Berg, CISSP

      > ---

      > Trust Factory B.V. | www.dna-portal.net

      > Bazarstraat 44a | www.trust-factory.com

      > 2518AK The Hague | Phone: +31 70 3620684

      > The Netherlands | Fax : +31 70 3603009

      > ---

      > --(end of

      > broadcast)--

      > TIP 1: if posting/reading through Usenet, please send an appropriate

      > subscribe-nomail command to majordomo.postgresql.questionfor.info.postgresql.org

      > so that your

      > message can get through to the mailing list cleanly

      >

      --(end of broadcast)--

      TIP 4: Have you searched our list archives?

      http://archives.postgresql.org

      #1; Tue, 20 May 2008 01:53:00 GMT