Thread: A newbie's opinion - postgres NEEDS a Windows binary!

A newbie's opinion - postgres NEEDS a Windows binary!

From
cs1spw@bath.ac.uk (Simon Willison)
Date:
This is my first time posting here and I've not lurked that much so
feel free to lamblast me if I'm out of line - but from what I've seen
of PostGres one of the biggest barriers to more widespread use is the
lack of an easy to use windows binary. I'm a PHP/mySQL web developer
who would love to switch over to using Postgres, but since I do all my
development under windows (I've got linux installed but due to various
things I find windows a more productive environment on the desktop)
I've hit something of a dead end. I tried installing cygwin but failed
to get it working properly, and there's no way I'm going to shell out
for a Windows C++ compiler to compile from scratch.

I know I am not alone - I've seen hundreds of posts on message boards
/ mailing lists from people in a similar situation to me who
desperately want to learn postgres but can't get it working on
windows. For all it's faults, mySQL has a nice easy to use windows
distribution which you can download, install and use straight away.

Are there any plans for an easy to use windows binary? Has this been
discussed a thousand times before (I did a search on google groups but
didn't find much)? Do I ask too many questions?

Cheers,

Simon

Re: A newbie's opinion - postgres NEEDS a Windows binary!

From
Doug McNaught
Date:
cs1spw@bath.ac.uk (Simon Willison) writes:

> This is my first time posting here and I've not lurked that much so
> feel free to lamblast me if I'm out of line - but from what I've seen
> of PostGres one of the biggest barriers to more widespread use is the
> lack of an easy to use windows binary. I'm a PHP/mySQL web developer
> who would love to switch over to using Postgres, but since I do all my
> development under windows (I've got linux installed but due to various
> things I find windows a more productive environment on the desktop)
> I've hit something of a dead end. I tried installing cygwin but failed
> to get it working properly, and there's no way I'm going to shell out
> for a Windows C++ compiler to compile from scratch.

AFAIK Postgres requires Cygwin since it is basically a Unix program.
There has been talk of doing a "real" Windows port but it would be a
lot of work and we're mostly Unix zealots here.  ;)

If you are having trouble getting Cygwin installed you should try the
appropriate mailing list or newsgroup for help.

-Doug
--
Let us cross over the river, and rest under the shade of the trees.
   --T. J. Jackson, 1863

Re: A newbie's opinion - postgres NEEDS a Windows binary!

From
"Robert J. Sanford, Jr."
Date:
as far as the pre-built binary goes...
   you don't have to compile the windows code - the full install
   of cygwin has a pre-built binary that you can use. you
   download and install the full cygwin and then you read the
   readme found at:
      cygwin/usr/doc/Cygwin/postgresql-7.1.2.README

   DO NOT use the readme found in cygwin/usr/doc/postgresql
   because it is mostly useless and confusing.

   you can also scan the postgresql/cygwin mailing list archives
   for more info.

as far as being unix zealots goes...
   that's all well and good and i can fully appreciate your postion.
   but...

   a large number of us are not given the option of what platform
   we get to set up our databases on. my office is win2k and sql
   server. i'd love to switch over to postgres (and my boss' budget
   would as well) but there are performance constraints with the
   cygwin version that are simply unacceptable to us. that is not
   necessarily a function of postgres but a function of the cygwin
   libraries. whatever the cause the fact that postgres will crater
   under cygwin given more than 20-30 connections on the same
   hardware as the linux version serving 100+ connections makes us
   very uncomfortable.

   my personal belief is that a win32 native version of postgres
   would resolve the connection issues and allow many more people
   to adopt postgres.

   this is of course coming from someone that isn't contributing
   to the code base and will therefore only "complain" about this
   this one time and will accept any virtual beatings you care to
   deliver ;)

   given that i don't have any grasp of the postgres code base any
   suggestion that i offer up will be simply grasping at straws.
   i do know that the apache group has had similar problems with win2k
   and their new architecture is targeted at resolving multi-platform
   issues by providing a platform independent layer for networking
   and file manipulation. their performance under win2k is orders of
   magnitude better not having to go through the posix layer. my
   guess is that this required a near total rewrite on their part
   and would probably require the same on the part of the postgres
   team.

rjsjr

> -----Original Message-----
> From: pgsql-general-owner@postgresql.org
> [mailto:pgsql-general-owner@postgresql.org]On Behalf Of Doug McNaught
> Sent: Tuesday, November 20, 2001 10:20 AM
> To: Simon Willison
> Cc: pgsql-general@postgresql.org
> Subject: Re: [GENERAL] A newbie's opinion - postgres NEEDS a Windows
> binary!
>
>
> cs1spw@bath.ac.uk (Simon Willison) writes:
>
> > This is my first time posting here and I've not lurked that much so
> > feel free to lamblast me if I'm out of line - but from what I've seen
> > of PostGres one of the biggest barriers to more widespread use is the
> > lack of an easy to use windows binary. I'm a PHP/mySQL web developer
> > who would love to switch over to using Postgres, but since I do all my
> > development under windows (I've got linux installed but due to various
> > things I find windows a more productive environment on the desktop)
> > I've hit something of a dead end. I tried installing cygwin but failed
> > to get it working properly, and there's no way I'm going to shell out
> > for a Windows C++ compiler to compile from scratch.
>
> AFAIK Postgres requires Cygwin since it is basically a Unix program.
> There has been talk of doing a "real" Windows port but it would be a
> lot of work and we're mostly Unix zealots here.  ;)
>
> If you are having trouble getting Cygwin installed you should try the
> appropriate mailing list or newsgroup for help.
>
> -Doug
> --
> Let us cross over the river, and rest under the shade of the trees.
>    --T. J. Jackson, 1863
>
> ---------------------------(end of broadcast)---------------------------
> TIP 3: if posting/reading through Usenet, please send an appropriate
> subscribe-nomail command to majordomo@postgresql.org so that your
> message can get through to the mailing list cleanly
>

Re: A newbie's opinion - postgres NEEDS a Windows binary!

From
"Brent R. Matzelle"
Date:
--- "Robert J. Sanford, Jr." <rsanford@nolimitsystems.com> wrote:
>    my personal belief is that a win32 native version of postgres
>    would resolve the connection issues and allow many more people
>    to adopt postgres.

I totally agree with you, but as I explain below that really cannot
happen.

>    this is of course coming from someone that isn't contributing
>    to the code base and will therefore only "complain" about this
>    this one time and will accept any virtual beatings you care to
>    deliver ;)
>
>    given that i don't have any grasp of the postgres code base any
>    suggestion that i offer up will be simply grasping at straws.
>    i do know that the apache group has had similar problems with
>    win2k and their new architecture is targeted at resolving
>    multi-platform issues by providing a platform independent layer
>    for networking and file manipulation. their performance under
>   win2k is orders of
>    magnitude better not having to go through the posix layer. my
>    guess is that this required a near total rewrite on their part
>    and would probably require the same on the part of the postgres
>    team.

PostgreSQL is built with a multi-process model, rather than a
multi-threaded model such as MySQL.  The win32 platform cannot handle
a multi-process model and probably never will (it would not be in
MS's best interests nowadays anyway).  This is what makes a port a
major difficulty and would set the PostgreSQL team back months to
years in development time.  IMHO it is much more important to
increase the functionality, stability, and speed of the *NIX version.
 If you want to use PostgreSQL in a production environment then pick
up a copy of Linux or FreeBSD.  These OSes a load easier to learn,
use, and maintain than you win32-only people would think.  I am a
win32 to Linux convert so you will have to trust me on this ;)  Plus,
you can use any number of GUI tools that run on win32 to manipulate
PostgreSQL: Access, Webmin, Putty, Winsql, phpPgAdmin.

Brent

__________________________________________________
Do You Yahoo!?
Yahoo! GeoCities - quick and easy web site hosting, just $8.95/month.
http://geocities.yahoo.com/ps/info1

Re: A newbie's opinion - postgres NEEDS a Windows binary!

From
"Mike Arace"
Date:
Hey guys,

Thats a great point Robert, and I have to agree with you.

Postgres is by far my favorite open-source RDBMS system, and is the most
capable I have found.  The community is also perhaps the most vibrant I have
seen.  If you ask any question you will have an answer in 6 minutes flat.
Its great.

That being said, the lack of a native Windows version puts it at a distinct
disadvantage when trying to gain access to new markets.  A key area in which
postgres could compete very favorably is among the "Access crowd" - the
people who get that "free" database with the version of Office that comes on
their new computers and then proceed to build their small businesses around
it.  (I mean free in the sense that they are already paying for Word and
Excel, and in their eyes it is a part of the package)  Access has nowhere
near the functionality of Postgres, but it is "good enough" to put together
a couple tables and forms to fill them out.  User-interface issues aside,
Postgres would be a great replacement for Access since it could scale much
better, and has a very appealing price point.  The only thing holding it
back is the lack of a native windows version and inability to be installed
by people who don't know POSIX from a fine clam sauce.

Taking this from another angle, Postgres (with its relatively small
footprint and robust features) could be a perfect embedded database for
complex client applications, such as integrated CRM packages or fat clients
for large distributed applications.  The fact that the database can play
with virtually any language only makes this more salient.  Again, the lack
of ability to deploy seemlessly on a microsoft platform is an issue in this
area, since this little monopoly thing isn't going away anytime soon.

Being in the same position as Robert, (not an active developer in the
program) I can only offer this as advice at the moment, to be taken as it
will.  I'm curious to know, however, if there are any attempts out there to
develop an abstraction layer for postgres or to port it to windows natively.
  From a commercial standpoint, these would be great projects to rally
behind.  While it may seem like a waste of resources for an open source
project, more cross-platform capabilities = more users, more users = more
commercial developers, more commercial developers = more resources, and more
resources = more developement on Postgres itself.  It's the gift that keeps
on giving!

None of this shouldn't be taken as a criticism.  PostgreSQL is the best
database out there for developers looking for a stable, fast, and expanding
environment to build quick and flexible applications.  It's in a great
position to make a major impact in the industry.

Just a thought.

Regards
Mike

_________________________________________________________________
Get your FREE download of MSN Explorer at http://explorer.msn.com/intl.asp


Re: A newbie's opinion - postgres NEEDS a Windows binary!

From
Rich Shepard
Date:
On Tue, 20 Nov 2001, Mike Arace wrote:

> Postgres is by far my favorite open-source RDBMS system, and is the most
> capable I have found.  The community is also perhaps the most vibrant I have
> seen.  If you ask any question you will have an answer in 6 minutes flat.
> Its great.
>
> That being said, the lack of a native Windows version puts it at a distinct
> disadvantage when trying to gain access to new markets.

Mike,

  You've identified just a couple of the many advantages of linux and the
*BSDs over the various flavors of Windows. But, you're looking in from the
outside instead of stepping over the very low bridge from Redmond to your
choices.

  I've run my business on linux-hosted software for almost four years now.
And I'd never look back. Consider moving yourself (and your company) away
from Windows and gain all the benefits of the open source/free software
world.

  Yes, money is a big factor, but it's far from the most important factor.
The most important, critical, and over-riding reason to move to linux is
to regain control over the current state of your business and the future of
your business. You may not appreciate the difference until you experience it
first hand. By the same reasoning, people in countries without the freedoms
we (still) have cannot imagine what it would be like to select where you
want to live, what sort of work you'd like to do and for whom you'd like to
work. Or, if you're a woman, whom you will marry.

  I've watched my sysadmin friends complain about the loss of control in
their companies when Microsoft decides to change a document format and now
everyone has to upgrade to the latest version and try to convert all their
documents to the current standard.

  Postgres is an outstanding database, there's no question about it. But,
there are *choices* -- real choices -- in the linux world for word
processing, spreadsheets, graphics, presentations, accounting, and so on.
Some offerings are proprietary and cost money, others are released under the
GPL or BSD licenses either for a price or for free. But, you get to pick and
choose what works for you and makes the best sense (and greatest profit) for
your company.

  Over the years there have been a very few times, perhaps three, when I've
had to transmit a document electronically to a client or a regulatory
agency. If they cannot figure out how to import an ASCII text file into
whatever version of winWord they have, I send it to them in Word-6 format
and they're happy. Almost everything we do ends up on paper and no one at
all cares what software is used to produce it. It's the product that
matters, not the process.

  So, before you ask those of us in the linux/*BSD community to lower our
standards for the convenience of Microserfs, consider making the change
yourself in the other direction. You'll be amazed at how computing becomes
fun again.

Rich

Dr. Richard B. Shepard, President

                       Applied Ecosystem Services, Inc. (TM)
            2404 SW 22nd Street | Troutdale, OR 97060-1247 | U.S.A.
 + 1 503-667-4517 (voice) | + 1 503-667-8863 (fax) | rshepard@appl-ecosys.com
                         http://www.appl-ecosys.com



Re: A newbie's opinion - postgres NEEDS a Windows binary!

From
"Robert J. Sanford, Jr."
Date:
first for clarity - i am NOT advocating that postgres be re-written
just to support win32. my initial point was to describe what would
need to be done if someone wanted to have a win32 native version.
i was sort of hoping it would be obvious that when i said that it
would take a complete rewrite to make it win32 native that people
on the list would understand what that means. for something like
postgres that would be a significant undertaking.

i use win32 at work and i do my personal coding on the cygwin binary
of postgres (soon moving to the mac osx version). my personal
production environment is a red hat linux machine with postgres. as
one of our fellow list members pointed out to me in a personal email,
you choose the tool that best fits your needs. if you _need_ to be
working in win32 with high-traffic then postgres is probably not for
you.

rjsjr

> PostgreSQL is built with a multi-process model, rather than a
> multi-threaded model such as MySQL.  The win32 platform cannot handle
> a multi-process model and probably never will (it would not be in
> MS's best interests nowadays anyway).  This is what makes a port a
> major difficulty and would set the PostgreSQL team back months to
> years in development time.  IMHO it is much more important to
> increase the functionality, stability, and speed of the *NIX version.
>  If you want to use PostgreSQL in a production environment then pick
> up a copy of Linux or FreeBSD.  These OSes a load easier to learn,
> use, and maintain than you win32-only people would think.  I am a
> win32 to Linux convert so you will have to trust me on this ;)  Plus,
> you can use any number of GUI tools that run on win32 to manipulate
> PostgreSQL: Access, Webmin, Putty, Winsql, phpPgAdmin.
>
> Brent
>
> __________________________________________________
> Do You Yahoo!?
> Yahoo! GeoCities - quick and easy web site hosting, just $8.95/month.
> http://geocities.yahoo.com/ps/info1
>
> ---------------------------(end of broadcast)---------------------------
> TIP 6: Have you searched our list archives?
>
> http://archives.postgresql.org
>

Re: A newbie's opinion - postgres NEEDS a Windows binary!

From
Tom Lane
Date:
"Brent R. Matzelle" <bmatzelle@yahoo.com> writes:
> ... This is what makes a port a
> major difficulty and would set the PostgreSQL team back months to
> years in development time.  IMHO it is much more important to
> increase the functionality, stability, and speed of the *NIX version.

This is really pretty much the bottom line in this discussion (which
we've had many times before, BTW).  Certainly a native Windows version
could be done --- but the amount of work required seems out of all
proportion to the benefit, especially when compared to what else might
be accomplished with the same amount of work.

There are other considerations involved, notably a cordial dislike of
all things Microsoft among some of the key developers, but what it comes
down to is that most of the people who might have the ability to do this
would rather spend their time and energy elsewhere.

            regards, tom lane

Re: A newbie's opinion - postgres NEEDS a Windows binary!

From
"Brent R. Matzelle"
Date:
--- "Robert J. Sanford, Jr." <rsanford@nolimitsystems.com> wrote:
> as one of our fellow list members pointed out to me in a personal
> email,  you choose the tool that best fits your needs. if you
> _need_ to be
> working in win32 with high-traffic then postgres is probably not
> for you.

That is true if you have the client and database running on a single
win32 machine.  However you can connect to PostgreSQL with TCP/IP so
you can always run the database on *NIX and run the web server or
other client software on win32 through libpq.dll, Python, Java, PHP,
PERL or ODBC.  With all those choices it makes it an easier sell to
an employer who would like to avoid the $5-20,000 per processor
license fees in a database like MSSQL.

Brent

__________________________________________________
Do You Yahoo!?
Yahoo! GeoCities - quick and easy web site hosting, just $8.95/month.
http://geocities.yahoo.com/ps/info1

Re: A newbie's opinion - postgres NEEDS a Windows binary!

From
"Andrew G. Hammond"
Date:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 2001 November 20 04:19 pm, Brent R. Matzelle wrote:
> --- "Robert J. Sanford, Jr." <rsanford@nolimitsystems.com> wrote:
> > as one of our fellow list members pointed out to me in a personal
> > email,  you choose the tool that best fits your needs. if you
> > _need_ to be
> > working in win32 with high-traffic then postgres is probably not
> > for you.
>
> That is true if you have the client and database running on a single
> win32 machine.  However you can connect to PostgreSQL with TCP/IP so
> you can always run the database on *NIX and run the web server or
> other client software on win32 through libpq.dll, Python, Java, PHP,
> PERL or ODBC.  With all those choices it makes it an easier sell to
> an employer who would like to avoid the $5-20,000 per processor
> license fees in a database like MSSQL.

Toss in the added benifit of not having to reboot your database server every
couple of hours, and it's a no-brainer.  Probably shouldn't be telling
everyone this, but I make good money transitioning Access and MSSQL systems
to Postgres.  I typically see between 1.5 and 2 times the performance with
Postgres on the same hardware (with proper tuning of the OS).  There's just
no good reason for a database server to waste cycles and ram running a gui
desktop environment.

- --
Andrew G. Hammond     mailto:drew@xyzzy.dhs.org   http://xyzzy.dhs.org/~drew/
56 2A 54 EF 19 C0 3B 43 72 69 5B E3 69 5B A1 1F                  613-389-5481
5CD3 62B0 254B DEB1 86E0  8959 093E F70A B457 84B1
"To blow recursion you must first blow recur" -- me
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org

iEYEARECAAYFAjv7P20ACgkQCT73CrRXhLGvsgCfYa9DS4D26oA0qDgjE0XM21Qy
ClYAnjziuDl7EUwYXZvagXwZSwqVzbo2
=jLqH
-----END PGP SIGNATURE-----

Re: A newbie's opinion - postgres NEEDS a Windows binary!

From
marpet@linuxpl.org
Date:
On Wed, 21 Nov 2001 07:08:42 +0200
"Andrew G. Hammond" <drew@xyzzy.dhs.org> wrote:

> Toss in the added benifit of not having to reboot your database server every
> couple of hours, and it's a no-brainer.  Probably shouldn't be telling
> everyone this, but I make good money transitioning Access and MSSQL systems
> to Postgres.

why not? let all the people know, that it really WORKS and someone is
going to actually PAY MONEY to have someone make it work!

This is reassuring for both developers and the users :-)

regards

--
Marek Pętlicki <marpet@linuxpl.org>
Linux User ID=162988