Thread: A newbie's opinion - postgres NEEDS a Windows binary!
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
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
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 >
--- "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
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
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
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 >
"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
--- "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
-----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-----
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