Is MySQL Slowly Turning Closed Source?
mpol writes "Sergei from MariaDB speculated on some changes within MySQL 5.5.27. It seems new testcases aren't included with MySQL any more, which leaves developers depending on it in the cold. 'Does this mean that test cases are no longer open source? Oracle did not reply to my question. But indeed, there is evidence that this guess is true. For example, this commit mail shows that new test cases, indeed, go in this "internal" directory, which is not included in the MySQL source distribution.' On a similar note, updates for the version history on Launchpad are not being updated anymore. What is Oracle's plan here? And is alienating the developer community just not seen as a problem at Oracle?"
Postgresql is also a Free Software multi-platform database. It was designed properly (unlike MySQL, Postgresqlwas designed with transactions in mind), has excellent internationalization support (proper 3 and 4 byte UTF, unlike MS SQL-Server with its UCS-2 or blob unicode [unless the very latest version has fixed this]).
Personally I prefer Postgresql to MySQL. While Postgresql looks more 'plain vanilla' I actually find it more straightforward to get easy things done (that is, pgadminIII doesn't look so flashy but I found it is much easier to get connected and get going than mysqlworkbench). YMMV of course, but if you are concerned about corporate control and the future of MySQL taking a look at Postgresql won't harm you - it is a nice(r) place to land if you have to.
Can someone please explain the sweet spot in which MySQL is a better option than both SQLite and PostgreSQL?
It seems to me that SQLite is a much better option on the very low end, and by the time MySQL would be a better choice, PostgreSQL is an even better choice.
if they want to use open source database. Try Firebird SQL if you want to go light (lighter than mysql in most cases I've seen), or go with the big boys with PostgreSQL.
Unfortunately, for most LAMP-stack applications that M is going to be MySQL or shit doesn't work. They're written to MySQL, and Postgres support is typically volunteer-maintained by one person. This sucks, yes.
Halfway solution: at least get the apps to move to MariaDB.
http://rocknerd.co.uk
>Java is free like in libre, the reference implementation is under the GPLv2: OpenJDK
Java is NOT free as in Libre. While OpenJDK is the "reference implementation" (which in Oracles terminology means "Blame the Apache Foundation") it does not and will never include the closed source goodies in Oracle Java.
In addition, Linux distros are no longer allowed to redistribute Oracle Java due to some bizarre Ellinsionian fiat. (probably they want you to use Snoracle Linux). So If you still need Oracle Java for whatever reason, you have to install it yourself. However despite Larry's best efforts, the Community (thanks!) has come through with scripts and native packages to install recent Oracle Java on any Linux distro you can think of.
Cultist of the Average Middle-Aged Ones
I have to disagree. I remember reading the mailing lists when StarOffice was first open sourced. The developers of StarOffice had a very closed source approach to development, and outsiders were not encouraged whatsoever. You'll notice the leaps and bounds taken by LibreOffice - from all the way to improving the build tools to improving the code base.
That wasn't an Oracle issue, but a StarOffice development issue.
XML is like violence. If it doesn't solve the problem, use more.
I've run two big sites on PostgreSQL now, the first is a content management system for schools across the US with ~3M users with 1K to 3K active at the same time. 300G db on machines with 128G RAM, 34 15kSAS drives, HW RAID controllers and 48 AMD opteron cores. We ran a very aggressive autovacuum schedule, 8 threads with 1ms sleep and max work limit in the 5000 or higher range. We ran several other services on top of pgsql as well, a search engine, stats db, and session servers on it there. Each setup somewhat differently, all 24/7 and quite reliable. The main ~300G cms database was replicated by Slony, since it was setup some time ago when slony was the only real reliable etc replication engine at the time we started. Honestly, it was great performance wise, and reliability wise. Working around Slony for ddl updates is a gigantic pain in the ass tho. Things have gotten better.
The second site, in my current job is also 24/7 and on big hardware but is used as a core db for a storage system consisting of literally thousands of TB sized HDs. The actual db is only a fraction of our storage.
Once you teach your developers to be db centric (start with the data model and work upwards) and the little tricks of postgresql they usually are pretty happy with it. But if you don't have a pg specialist on staff the developers often hate using pgsql because it's NOT what they're used to.
An example is when I was teaching a new guy to use it and he was bitching at how poor insert performance was. He had a 10k file to import and it was about 10% imoprted after 10 minutes. I had him truncate the table and wrap the inserts in begin;commit; and the whole thing imported in about 10 seconds. This was back on pg 7.1 and php3.0 days. Pg has gotten much faster but the ratio of 10k transactions / individual inserts versus batching all 10k together is still quite large.
The fact that you can wrap anything except create / drop database / table or setval/nextval in a transaction and roll it back makes it amazing for development work. You can wrap some huge db updates in a transaction and if there's an error anywhere the whole thing rolls back and you can try again without cleaning up a half-updated db.
It's not perfect, but once you get a handle on performance tuning, autovacuum tuning, and replication it's pretty amazing both performance and reliability wise.
--- It is not the things we do which we regret the most, but the things which we don't do.