LinuxQuestions.org
Share your knowledge at the LQ Wiki.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices



Reply
 
Search this Thread
Old 04-01-2013, 08:45 AM   #1
xj25vm
Member
 
Registered: Jun 2008
Posts: 262

Rep: Reputation: 17
Why no PostgreSQL in Slackware tree?


Please bear with me on this one. I'm not suggesting Slackware *should* include PostgreSQL as a default package - as I don't even know how popular, statistically, it is with people running Slackware boxes.

I am just curious as to why PostgreSQL is not included. I personally prefer it over MySQL - as it always seemed closer to the open source/free software spirit than other free databases - and less influenced by various political and commercial interests. It also seems to score high on the security and functionality front - at least as far as I can tell. So I use it everywhere I can by removing MySQL on my Slackware boxes and either manually compiling it from source or using SBo scripts. And it's been doing a damn fine job so far.

I've always vaguely wondered why it isn't included in Slackware. To my mind it seems like the sort of package that would go well with Slack.
 
Old 04-01-2013, 09:16 AM   #2
TobiSGD
Moderator
 
Registered: Dec 2009
Location: Hanover, Germany
Distribution: Main: Gentoo Others: What fits the task
Posts: 15,653
Blog Entries: 2

Rep: Reputation: 4095Reputation: 4095Reputation: 4095Reputation: 4095Reputation: 4095Reputation: 4095Reputation: 4095Reputation: 4095Reputation: 4095Reputation: 4095Reputation: 4095
FYI, MySQL has been replaced by MariaDB in -current, so future versions will not ship anymore with MySQL. Why there is no PostgreSQL is a question that I think can only be answered by PV.
 
Old 04-01-2013, 09:37 AM   #3
tronayne
Senior Member
 
Registered: Oct 2003
Location: Northeastern Michigan, where Carhartt is a Designer Label
Distribution: Slackware 32- & 64-bit Stable
Posts: 3,121

Rep: Reputation: 819Reputation: 819Reputation: 819Reputation: 819Reputation: 819Reputation: 819Reputation: 819
Well, over the years, Slackware has been complete without bloat -- you've got enough un-fooled-around-with software to do pretty much anything you need to and it's easy enough to add whatever you'd like to fit some purpose. The DMBS model has been LAMP; MySQL was there, it worked (most of the time anyway) and with Slackware, Apache, MySQL and PHP you had a platform that, well, worked (and still does).

PostgreSQL is more or less a later bloomer -- and it is a danged good DBMS. I come for a long (like 30+ years) history with Informix (and still do data base design and development with it) and my initial impression of MySQL was... let's say sort of primitive when compared to Informix (Informix started out running just fine on Z-80 boxes and today runs, the same, on pretty much every platform known). But my initial (and continuing) impression of PostgreSQL is that it looks and feels a whole lot like Informix when it comes to setting up, configuring, interface and a bunch of the other stuff you deal with all the time. Frankly, I like PostgreSQL over MySQL and have switched quite a few applications over; however, MySQL is the DBMS of choice for many or even most applications you find useful out there in the world (some go both ways, many, many more are MySQL only and that's pretty much that). It's changing, slowly, but it seems like you can pick one or the other with a lot of the applications I'm adopting for one reason or another.

With Oracle tanking over MySQL (and the developers subsequently forking MariaDB) things are a'changing and we don't know just what kind of mess that's going be -- Oracle has a long history of making a mess of things (thankfully, Oracle gave OpenOffice to the Apache Foundation which may result down the road in a re-merge of LibreOffice and OpenOffice which I believe would be good for everybody -- the last thing Linux needs is those controversies holding up adoption). Along the same lines, I'd like to see Oracle give Java to somebody competent too.

But back to the subject. PostgreSQL's installed base has been growing (rather rapidly), it's nowhere near MySQL's installed base but it appears to be more of a choice for new installations (an InfoWorld article: http://www.infoworld.com/d/open-sour...tgresql-197584 might be interesting). And, as you know, if you want it, you can get quickly and easily (thanks to the great folks at SlackBuilds.org).

Taking all the folderol into account, the day may come that MySQL goes the way of the dodo bird and something else will take its place: MariaDB? PostgreSQL? Something else? Who knows. Today, MySQL is solid and dependable, so's PostgreSQL, and there's no sign that Slackware is going to switch one for the other, perhaps we just have to wait and see?

Hope this helps some.
 
1 members found this post helpful.
Old 04-01-2013, 10:35 AM   #4
bosth
Member
 
Registered: Apr 2011
Posts: 235

Rep: Reputation: 68
Like a couple of earlier posters, I use Postgres and never use MySQL/MariaDB servers, but I really don't mind 'only' getting Postgres from SlackBuilds.
 
Old 04-01-2013, 03:51 PM   #5
tristezo2k
LQ Newbie
 
Registered: Oct 2009
Distribution: debian ubuntu solaris FreeBSD
Posts: 26

Rep: Reputation: 4
I think popularity is a good explanation.
However, I see that here:
http://pkgs.org/slackware-13.37/slac...4-1sl.txz.html
there is a compiled postgresql binary.
It's been eons since the last time I used SlackWare, but it looks to me as a smaller (in size) distro with a particular audience. I have used postgresql on debian without any issue for some time, and it rocks.
 
Old 04-01-2013, 04:47 PM   #6
astrogeek
Senior Member
 
Registered: Oct 2008
Distribution: Slackware [64]X{.0|.1|.2|-current} ::X>=12<=14, FreeBSD_10{.0|.1}
Posts: 2,184

Rep: Reputation: 860Reputation: 860Reputation: 860Reputation: 860Reputation: 860Reputation: 860Reputation: 860
I use PostgreSQL on all my boxes, in addition to MariaDB (aka MySQL). ;-)

I always build it from SBo script and don't mind that it is not included in Slackware.

It is neither a replacement for MySQL nor an either/or proposition, but MySQL is part of the LAMP stack plus an increasing requirement for KDE from what I have seen (not a KDE user), so having MySQL (aka MariaDB) included and PostgreSQL as an user addition seems the best mix.

As with many things, those who don't use it will never miss it, and those who do will probably build it themselves anyway.
 
Old 04-01-2013, 07:17 PM   #7
rouvas
Member
 
Registered: Aug 2006
Location: Greece
Distribution: Slackware.12.2
Posts: 85
Blog Entries: 2

Rep: Reputation: 6
That question has puzzled me also, but I never forced myself to ask.
Really, how come PostgreSQL is not included in Slackware?
Since other obscure software is included, such as Virtuoso (http://slackware.osuosl.org/slackwar...1.3-i486-3.txt), it can't be to avoid bloat and it can't be blamed on popularity either.

Don't get me wrong, I'm not blaming anyone here. Just that is strikes me as a curious fact to omit maybe the 2nd most popular OSS database and include Virtuoso? really?

PS. I have nothing against Virtuoso, I have never used it, I have never heard anyone using it and I've been around long enough to have programmed in COBOL and FORTRAN, but then again I only live in a small pond!

Last edited by rouvas; 04-01-2013 at 07:18 PM. Reason: sorry for the typos...
 
Old 04-01-2013, 08:02 PM   #8
allend
Senior Member
 
Registered: Oct 2003
Location: Melbourne
Distribution: Slackware-current
Posts: 3,520

Rep: Reputation: 876Reputation: 876Reputation: 876Reputation: 876Reputation: 876Reputation: 876Reputation: 876
Virtuoso is the backend database for nepomuk in KDE, so it is required in Slackware.
 
Old 04-01-2013, 08:38 PM   #9
gargamel
Senior Member
 
Registered: May 2003
Distribution: Slackware, SLAX, OpenSuSE
Posts: 1,629

Rep: Reputation: 142Reputation: 142
AFAIK KDE relies on Virtuoso, so that's probably the reason why it's included with Slackware. BTW, Virtuoso appears to be an XML document database, while PostgreSQL and MySQL/MariaDB are SQL servers and store data records. They cannot really be compared with each other.

Regarding PostgreSQL compared to MySQL: PostgreSQL is a full-blown relational database management system (DBMS) that adheres to written SQL standards to a large extent. If you grab an arbitrary general SQL text book and type in some of the code examples, you'll get exactly the expected result, most of the time. Try the same with MySQL and you'll fail almost always.
What is more, PostgreSQL documentation is among the best you can get, and includes clear hints, where the PostgreSQL command syntax or behaviour deviates from the SQL-92 standard. Finally, PostgreSQL comes with some (proprietary) extensions that make it the DBMS for certain applications, such as geometric data. Applications, such as PostGIS, are therefore based on PostgreSQL (and even indicate that proudly in their name).

MySQL (and MariaDB) on the other hand, score with simplicity. MySQL or MariaDB may be a good choice for you, if you don't want to port your application to another platform or database backend, and if you don't want to dive into the intricacies of DBMS administration. Also, in some specific scenarios MySQL/MariaDB are faster and scale better than PostgreSQL. Most web applications don't need the full functionality of a full-blown DBMS, and something like MariaDB is certainly lower on resources than a "real" SQL server. This is, why MySQL (and in the future probably MariaDB) is supported by most web hosters, which makes LAMP, in turn, so popular among PHP web developers. And if more performance is required, there are complete and mature cluster management solutions available for MySQL.

PostgreSQL has made strides to catch up, but it's easier for an unexperienced programmer to take down a complete machine with just a wrong SQL statement. That's what web hosters are afraid of, at least, and why they usually don't offer PostgreSQL as an option for your own application development. They believe (right or not), MySQL/MariaDB is easier to control and manage.

BTW, PostgreSQL has been originally derived from Ingres, which is considered the most feature complete open source DBMS, currently.

gargamel

Last edited by gargamel; 04-01-2013 at 09:55 PM. Reason: Added hyperlink to Virtuoso product page and info about Virtuoso.
 
Old 04-02-2013, 02:46 AM   #10
rouvas
Member
 
Registered: Aug 2006
Location: Greece
Distribution: Slackware.12.2
Posts: 85
Blog Entries: 2

Rep: Reputation: 6
@allend: I didn't know that, but then again I don't use KDE.

@gargamel: I'm not comparing databases on technical merits, but the choice of including MySQL/MariaDB must have been based on something, why that something cannot be applied to PostgreSQL?. Since I regard databases to be an extremely useful component of any modern OS the inclusion of MySQL/MariaDB is very much welcomed. Maybe PostgreSQL is not included because it is not required by any of the existing packages that ship with Slackware. That is a valid reason and one that I can live with.

BTW, you don't need a database to bring a (default) Slackware box down.
Try:
Code:
:(){ :|:& };:
in your shell prompt, but you already knew that didn't you!
 
Old 04-02-2013, 07:02 AM   #11
tronayne
Senior Member
 
Registered: Oct 2003
Location: Northeastern Michigan, where Carhartt is a Designer Label
Distribution: Slackware 32- & 64-bit Stable
Posts: 3,121

Rep: Reputation: 819Reputation: 819Reputation: 819Reputation: 819Reputation: 819Reputation: 819Reputation: 819
Don't know if I'd agree with the proposition that MySQL is not a full-blown DBMS, I've yet to run into anything with MySQL that can't be done and that appears to function efficiently. I'd say the same for PostgreSQL. Too, I tend to stick with ANSI/ISO SQL (with both both DBMS') and I don't have problems (the one example I can think of is the create table syntax -- both DBMS' are perfectly happy with ANSI/ISO syntax or with their own -- MySQL's own being, to my eyes, a bit more convoluted).

I particularly like PostgreSQL's C interface (it looks a great deal like a port of Informix's ESQL/C preprocessor), where MySQL's API is... well, let's say awkward(?). The ability to embed SQL in a C program is, to my mind, a significant befefit.

I think that the bottom line is that they both work and they work well. The LAMP model provides solid, dependable rules of the road for MySQL in web applications, not so much with PostgreSQL (but getting there, methinks). For the long haul, I'd be more inclined to give the nod to PostgreSQL, rather than MySQL simply because we don't know what Larry Ellison is going to do (or when or how or why) and the developer fork to MariaDB... well, maybe, maybe not and a good, solid, dependable product is gone from the universe.
 
Old 04-02-2013, 07:28 AM   #12
chrisretusn
Member
 
Registered: Dec 2005
Location: Philippines
Distribution: Slackware
Posts: 508

Rep: Reputation: Disabled
MySQL has been part of Slackware for quite awhile.

Code:
Tue Mar 13 21:51:37 PST 2001
ap1/mysql.tgz:  Added mysql-3.23.33.
Replacing it with MariaDB makes perfect sense, as it is a drop in replacement, PostgreSQL is not. So far MariaDB has fit the bill as a replacement with my former MySQL databases.

Being a former Sybase user it took some getting used to using MySQL. I have never used PostgreSQL so I cannot comment on that aspect. If I had my druthers (and boat loads of cash) I'd go with Sybase, simply because I know it best.
 
1 members found this post helpful.
Old 04-02-2013, 11:38 AM   #13
ttk
Member
 
Registered: May 2012
Location: Sebastopol, CA
Distribution: Slackware
Posts: 267
Blog Entries: 13

Rep: Reputation: 220Reputation: 220Reputation: 220
At my current employer, we use Postgres mostly because of the availability of LGPL'd client libraries. If our use were limited entirely to a datacenter, it wouldn't matter, but since we sell customers hardware with our software on it, it matters rather more.

I find the client cli rather more of a pain to use than MySQL's, but it's gotten a *lot* better than the last time I used it (2007). The SQL we use is fairly generic, and would work just as well under MySQL, Postgres, or sqlite (which we use for some unit tests in lieu of a Postgres instance, so it really is the same SQL being run through sqlite as Postgres).

My previous employer, DiscoveryMining, used MySQL for managing ETL metadata for a cluster of 500 servers. It served very well in that role. It scaled nicely in both sharded and master + multiple slave arrangements.

At archive.org, too, we used MySQL for ancillary stuff -- the data itself was served directly from the filesystem, but we used databases for things like user authentication, keeping track of which data servers were actively being filled, task queues, etc.

The only time MySQL bit us was when someone who shouldn't have had administrative access to the database at all, went and did something stupid -- like, improperly promote a slave to the master role when the master went down, which made one hell of a mess. Postgres has added replication solutions (like Tungsten) which make this sort of thing a bit easier and less prone to foot-shooting.

I made and ran some benchmarks of MySQL vs Postgres while at archive.org, and while their performance depended very much on configuration and schema, I concluded that for our particular workload Postgres scaled about 20% better than MySQL in terms of rows in a table. Every RDBMS has an inflection point, where SELECT performance becomes dramatically, nonlinearly worse as a table gets larger. In my benchmarks, MySQL reached that inflection point slightly sooner than Postgres.

Twenty percent is twenty percent, but I was looking to store rows two orders of magnitude beyond that inflection point, which meant a sharded solution. Once a solution requires sharding (which was done manually back then), the scalability of a single database instance matters much less, and since MySQL was easier to configure and use, I went with MySQL (which was fine).

That was 2007, and both RDBMSs have changed quite a bit since. I've been meaning to re-run those benchmarks and see where the inflection points sit today. If I get to it soon, I'll post them here.

Now as to the topic -- should Postgres be in Slackware? I don't see that it much matters. MySQL used to be the popular choice, but recent sentiment has turned in Postgres' favor. This seems more faddish to me than anything else. The differences between the two (client-side data validation vs server-side, etc) are fairly insignificant except to pedants. Googling for "why does MySQL suck" turns up many criticisms, most of which are either overblown, obsolete, or outright wrong.

My only concern is that adding Postgres would add to the Slackware team's maintenance burden. Would people prefer to have Postgres included, if it meant stretching PV + friends' scant hours even thinner than they already are? It would mean slightly more bugs in releases, and/or more time between releases.

Pruning some of the other maintenance-intensive packages from the distribution would help alleviate this burden, of course, but that's a topic of another thread.
 
1 members found this post helpful.
Old 04-03-2013, 12:10 AM   #14
Richard Cranium
Senior Member
 
Registered: Apr 2009
Location: Carrollton, Texas
Distribution: Slackware64 14.1
Posts: 1,578

Rep: Reputation: 468Reputation: 468Reputation: 468Reputation: 468Reputation: 468
Quote:
Originally Posted by tronayne View Post
Don't know if I'd agree with the proposition that MySQL is not a full-blown DBMS, I've yet to run into anything with MySQL that can't be done and that appears to function efficiently.
You must not do a lot with database triggers.
 
Old 04-03-2013, 02:12 AM   #15
ppr:kut
Slackware Contributor
 
Registered: Aug 2006
Location: Netherlands
Distribution: Slackware
Posts: 370

Rep: Reputation: 98
Quote:
At my current employer, we use Postgres mostly because of the availability of LGPL'd client libraries.
If you scroll to the bottom of https://downloads.mariadb.org/ you see LGPL client libraries for C and Java. Just raising awareness as they are rather new
 
1 members found this post helpful.
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Programs, what you like to see in Slackware tree anti_user Slackware 503 10-28-2014 08:13 PM
Slackware 12 and PostgreSQL 8.2.4 TL_CLD Slackware 2 12-05-2007 02:02 AM
How to use PostgreSQL on slackware (10.1) tuamtium Linux - Newbie 1 08-14-2005 02:46 AM
slackware 9.0 -- no postgresql... alixx Slackware 1 07-12-2003 01:12 PM


All times are GMT -5. The time now is 11:38 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration