Slashdot Mirror


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?"

76 of 336 comments (clear)

  1. Oracle doesn't care about developer people by Anonymous Coward · · Score: 5, Insightful

    And is alienating the developer community just not seen as a problem at Oracle?

    Pretty much exactly this.

    1. Re:Oracle doesn't care about developer people by kimvette · · Score: 4, Insightful

      Anyone asking this question has obviously never dealt with Oracle.

      --
      The Christian Right is Neither (Christian nor right). See: Matthew 23, Matthew 25, Ezekiel 16:48-50
    2. Re:Oracle doesn't care about developer people by Anonymous Coward · · Score: 5, Insightful

      Indeed. This has been obvious for some time (InnoDB) which is why many needing similar functionality have moved on to PostgreSQL. Of course there so many options these days, and as usual the choice depends on the application.

      Oracle: ZFS, MySQL, VirtualBox, Java...

      And quite frankly ZFS and Java do not integrate well with many Linux distributions. Avoid oracle or face a never ending string of hidden costs.

      I know many X-Sun employees, Oracle is not earning a good reputation with the science and engineering folks. Once their brand dries up like Cisco's is, it will be all down hill from there.

    3. Re:Oracle doesn't care about developer people by Anonymous Coward · · Score: 5, Insightful

      Exactly. Anybody asking this question is obviously not aware of the OpenOffice saga.

    4. Re:Oracle doesn't care about developer people by erroneus · · Score: 5, Insightful

      That's to be expected. The people at Oracle are selling to MBA/Executives who believe the fact that they have heard the brand name and see it everywhere they go means something. It doesn't matter that it's over-priced or that their sales model is not presentative of what they actually deliver, the MBAs see value in expensive things and believe it is worth it. Meanwhile, MySQL had been gaining market share and living in areas where Oracle wants to live. So they buy the product thinking they are buying the real estate it sits on. They know at some level they aren't buying the territory but they think that by boiling the frog, they can somehow get more out of it.

      While Postgres is probably the obvious choice to migrtate into, especially for new projects, I still kind of want to have an M in my LAMP. Stupid, I know, but it's true. I don't want LAPP... bad childhood memories.

      Oracle demonstrated what dumbasses they are with OpenOffice. The community proved there is less value in a name than Oracle want to believe.

      So go ahead, Oracle... buy more names and see what it gets you. In the end we still see everything associated with you as an extension of you and we don't actually LIKE you because of who you are, not what your name is. You'd think with a name like Oracle they would be more insightful than they are.

    5. Re:Oracle doesn't care about developer people by Anne+Thwacks · · Score: 3, Insightful
      Oracle is quite fond of slapping their over charged customers with a wet fish from time to time, There is no reason to expect them to "support the community" other than with a millstone round the neck. They never have in the past.

      There is also no sane reason to use mySQL (or Oracle) when PostgreSQL is better than both in almost every respect.

      --
      Sent from my ASR33 using ASCII
    6. Re:Oracle doesn't care about developer people by lindi · · Score: 3, Interesting

      MySQL documentation was not open source when Sun was in charge either so doing the same with testcases is not very surprising (debian bug 335219).

    7. Re:Oracle doesn't care about developer people by David+Gerard · · Score: 3, Informative

      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
    8. Re:Oracle doesn't care about developer people by c0lo · · Score: 5, Insightful

      While Postgres is probably the obvious choice to migrtate into, especially for new projects, I still kind of want to have an M in my LAMP. Stupid, I know, but it's true. I don't want LAPP... bad childhood memories.

      Well, MariaDB is still M, is is not?

      --
      Questions raise, answers kill. Raise questions to stay alive.
    9. Re:Oracle doesn't care about developer people by maroberts · · Score: 5, Funny

      I don't want LAPP...

      Don't projects get Finn-ished when you use LAPP?

      --

      Donte Alistair Anderson Roberts - hi son!
      Karma: Chameleon

    10. Re:Oracle doesn't care about developer people by forgot_my_nick · · Score: 5, Informative

      >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
    11. Re:Oracle doesn't care about developer people by RichardJenkins · · Score: 5, Funny

      Clearly they were so overwhelmed by their success with OpenOffice they want to replicate it with MySQL.

    12. Re:Oracle doesn't care about developer people by M1FCJ · · Score: 5, Funny

      At least he's not using FreeBSD, Apache, PostgreSQL and PHP...

    13. Re:Oracle doesn't care about developer people by erroneus · · Score: 3, Interesting

      Let's just say it's more convenient to paint pictures with certain colors we all understand.

      That said, I agree and have experienced F/OSS projects screwing me over. GNOME screwed the whole community in a huge assrape manner. And GiMP played a small part in the whole thing.

      It is clear to most tech people when a manager or above makes a decision where it comes from. When it's "no one got fired for going Microsoft" or similar, you have to realize they just don't know what they are buying. When they say something like "I want all MySQL replaced with Oracle because it's more professional" (which really happened to me) I have to just roll my eyes.

    14. Re:Oracle doesn't care about developer people by ta+bu+shi+da+yu · · Score: 2, Informative

      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.
    15. Re:Oracle doesn't care about developer people by neonsignal · · Score: 3, Funny

      anonymous "one" can argue that black is white and get killed on the next zebra crossing too

    16. Re:Oracle doesn't care about developer people by Greyfox · · Score: 4, Funny

      Not many bad childhood memories for that. Unless you get caught at it. "Jimmy... what have we told you about using PHP? It'll make you go blind!"

      --

      I'm trying to teach myself to set people on fire with my mind... Is it hot in here?

    17. Re:Oracle doesn't care about developer people by Raenex · · Score: 2

      That Debian bug is from 2005, and Sun bought MySQL in 2008, so you'll have to blame the original MySQL owner for that, which just so happens is the person behind MariaDB.

    18. Re:Oracle doesn't care about developer people by Lucractius · · Score: 2

      By gradually chipping away at the old code in every component until you can prove to the lawyers that you own the copyrights to the entire thing.
      Then when you compile the next version. Your free to change the license to anything you like, even binaries only, no source code.

      However you cannot retroactively remove it from a previously published version... they can however just stop hosting old archives of the source code, stop making available old versions that are GPL, and flip everyone the bird while saying "the new version is a closed binary, suck it up or find another DB"

      --
      XML - A clever joke would be here if /. didn't mangle tag brackets.
  2. Missed title opportunity by Anonymous Coward · · Score: 5, Funny

    "Is MySQL Slowly Turning TheirSQL?"

    1. Re:Missed title opportunity by Anonymous Coward · · Score: 2, Interesting

      For those that may not know. The lead developer's son's first name is My. Maria (from MariaDB fame) being a daughter's name.

      So I think you have to go with LarrySQL.

    2. Re:Missed title opportunity by TeknoHog · · Score: 2

      For those that may not know. The lead developer's son's first name is My. Maria (from MariaDB fame) being a daughter's name.

      Actually, My is a female name. It was coined by Tove Jansson for a character in her Moomin series. The full name of the character is Little My, and it refers to the lowercase Greek letter mu, which in Scandinavian languages is spelled "my".

      http://en.wikipedia.org/wiki/Little_My

      --
      Escher was the first MC and Giger invented the HR department.
  3. Just use Postgresql by SplashMyBandit · · Score: 5, Informative

    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.

    1. Re:Just use Postgresql by nmb3000 · · Score: 2

      mysqlworkbench

      That's because MySQL Workbench is an abortion that never should have been released. It's also why a large majority of users and admins still use the last release of Query Browser and Server Administrator to interact with MySQL servers, even if the new features aren't supported.

      I tried using Workbench for a full day of SQL dev work before throwing in the towel. I've read others say that "you get used to it", but I'd also probably get used to losing 2 fingers from each hand -- it doesn't mean I want to. It's slower, less intuitive, and makes it more difficult to accomplish simple tasks.

      --
      "What do you despise? By this are you truly known." --Princess Irulan, Manual of Muad'Dib
      /)
    2. Re:Just use Postgresql by Sesostris+III · · Score: 2, Interesting

      For me, the one advantage MySQL (and MariaDB, and even Apache Derby!) have over PostgreSQL is that there are versions that can be run stand-alone "out of the box" as a non-root user. PostgreSQL (AFAIK) needs to be installed, and needs to be installed as root (and you need to create a postgres user, etc.).

      OK for production, you need to install things properly (as root), but for development / learning / tinkering the ability to run various instances stand-alone is a huge plus.

      (Of course, if there is the facility to run PostgeSQL out-of-the-box and stand-alone, please feel free to correct me!)

      --
      You never know what is enough unless you know what is more than enough. - Blake
    3. Re:Just use Postgresql by PhrstBrn · · Score: 3, Informative

      Of course, if there is the facility to run PostgeSQL out-of-the-box and stand-alone, please feel free to correct me!

      Sure, I can do that for you. Your assumption is wrong.

    4. Re:Just use Postgresql by slack_justyb · · Score: 4, Interesting

      Additionally, postgresql implements more of SQL99 than most others out there.

      "Real" BOOLEAN support, CTE using WITH (which MySQL is actually the only real enterprise DB that doesn't offer this), support for FETCH cursors, HOLD cursors, one of the best implementations of date math (maybe only DB2 does this better), blows MySQL out of the water hands down on window functions (seriously MySQL, no SQL OVER support? REALLY?!), also (I know this may seem trivial) but MySQL doesn't even implement SQL OVERLAY.

      In many ways postgresql brings a LOT of modern SQL to the table that it makes MySQL seem hokey, if not downright convoluted. I cannot speak for Oracle's 11g, but I've found postgresql just as capable at doing whatever it is I need to get done as I can in DB2, MS-SQL is just it's own beast altogether. However, MySQL lacks so much functionality that you constantly have to revert to procedures to get anything done.

      Now I will say to MySQL's credit, that it is one of the easiest DBs to admin for and they support a good subset of SQL2003, but it's not enough, it leaves a lot to want for. I know a lot of people have invested a lot into MySQL, but the lack of a lot of modern functions that a lot of other DBs enjoy out of the box, makes using MySQL a chore to write for. Thank goodness it's easy to scale and admin, because if it didn't have that going for it, then we'd have LAPP stacks. However, this is just another pot shot for MySQL. Slowly closing source code, no test scripts, dodgy support for some of the most useful (IMHO) features of standard SQL. I don't want to diss anyone who works on the project, they have done a mighty nice job, but there are more and more negatives building up, that the scales are starting to tip in opposition to MySQL. No disrespect, but we're at that point that people on the fence are really going to look hard at the competition.

      Finally, and totally off topic. IBM YOU SUCK! Seriously, you can't make a freaking function to create a CSV list from a set of rows?! I have to cast the result set to XML and then work backwards from there? Everyone else has one! I wouldn't curse you if I wasn't forced to use your product. There, glad I got to air that out.

    5. Re:Just use Postgresql by innocent_white_lamb · · Score: 4, Informative

      Perhaps you should be looking at Sqlite, which is a "a self-contained, serverless, zero-configuration, transactional SQL database engine" (as it says on their webpage).
       
      You can run it interactively (or through a bash script or something) with the sqlite3 command line shell, or (most efficiently) hook it into your own programs and use it to do all kinds of clever SQL stuff directly within your program.
       
      Oh yeah, it's also explicitly public domain, so you can use it for any purpose and in any application whatsoever.

      --
      If you're a zombie and you know it, bite your friend!
    6. Re:Just use Postgresql by suy · · Score: 3, Interesting

      I don't have the technical skills to judge the merits of MySQL vs PostgreSQL, but I can't tell you one thing: MySQL is like PHP, it might have lots of critics, but is the more widely used, supported, and developed database/programming language for web applications. All popular CMSs are written in PHP (Drupal, Joomla, MediaWiki, WordPress...), and many of them have MySQL first in the list. WordPress is almost MySQL specific. They have a PostgreSQL plugin, but works rewriting queries on the fly, and they recognize is expected to be slower, and not work for all plugins.

      I've always wanted to have the excuse to try a different programming language/framework for web applications, and even a different database server, but I never had the excuse because you always feel second class if you go with them. I use my own hosting, but for cheap virtual hosts PHP and MySQL is almost a de facto standard. And if you pick some web application almost always MySQL is the best or only choice.

      I know some day I'll be proved wrong, and this comment will be outdated, but I don't feel this is the time yet. And let me insist, I'm not claiming is due to technical merits (nor denying it), but I feel this is the way it is.

    7. Re:Just use Postgresql by Anonymous Coward · · Score: 2, Informative

      ...and it's built into python:

      import sqlite3 ...it's just that simple.

    8. Re:Just use Postgresql by erroneus · · Score: 2

      MySQL = Gecko
      PostgreSQL = Webkit

      Got it. But there is more to it than technically correct implementation and feature sets.

      As far as IBM goes, "CSV isn't *professional* so we don't do it!" I just love it when people think something isn't professional or "enterprise" enough. As if they have some clue about who, where and how these things are being used... largely by real professionals.

    9. Re:Just use Postgresql by itsdapead · · Score: 3, Interesting

      Personally I prefer Postgresql to MySQL. While Postgresql looks more 'plain vanilla' I actually find it more straightforward to get easy things done

      I've used both and am inclined to agree with you. Unfortunately, they are sufficiently different to make migrating existing projects a pain. Also, MySQL is commonly available in commercial web-hosting services, which makes it the safest bet for data-driven websites. I'd also agree that PostgreSQL isn't quite as falling-off-a-log simple to get started with as MySQL (which is the usual consequence of a more sophisticated system),

      It used to be 'horses for courses': The MySQL of a few versions ago really hit the sweet spot for website backends, in which "reads" are far more common than "writes", and most updates simply consisted of adding a new record to a table. In that case, you can live without transactions, referential integrity checking, functions etc. and enjoy the resulting performance. That's what started the "myth" that MySQL was faster than PostgreSQL (of course it was - it was doing less!).

      The later versions of MySQL seem like putting traction control and power steering on a bicycle. Perhaps someone should (or maybe has) fork "classic" MySQL as the ideal tool for data-driven websites, and leave the grown-up stuff to PostgreSQL? Or, maybe sqlite is the way to go for that.

      --
      In a survey of 100 programmers, 111111 thought that duck-typing was a good idea.
    10. Re:Just use Postgresql by he-sk · · Score: 4, Informative

      There are one-click installers available for Windows and OS X. On Linux, you would obviously the package management version.

      You also don't have to run PostgreSQL as root at all. I develop on OS X and typically run an installation from my home directory. (I also compile my own version, but you don't have to do that.)

      --
      Free Manning, jail Obama.
    11. Re:Just use Postgresql by bmo · · Score: 3, Insightful

      For PostgreSQL the only instructions I could find for installing PostgreSQL myself is to build from source

      You don't have access to precompiled postgresql binaries in your repositories? Why? Why are you not using a Linux distro with package management? Why are you not using a Linux distribution that supports postgresql like Ubuntu, Redhat, SuSE, etc?

      FFS, even Pardus supports postgresql.

      And if you're using Windows, Postgresql has a one-click Windows installer.

      I call shenanigans.

      --
      BMO

    12. Re:Just use Postgresql by fisted · · Score: 4, Insightful

      I've tried numerous times to drive a car, and every time i found it less easy than the motorcycle which i'm used to for 10 years.

      Therefore, from an objective point of view it can be concluded that cars are more difficult to drive than motorcycles.

      Thanks for listening, so where's my +5 Insightful like parent has?

    13. Re:Just use Postgresql by smpoole7 · · Score: 2

      > Which distributions are you using which let you install from the repositories without being root

      I wouldn't have a distro that didn't require installation as root. :)

      Any decent distro will not only install Postgres from repository for you, it will set up the Postgres(ql) user and group. Yes, it will be installed and available to all users on the system, but, while the original poster might personally have a concern about this, for 99% of us, it's a non-issue.

      If the GP is concerned about people being able to download and "tinker," that's not a mainstream concern. Besides, the way I do something like that is virtualization: set up your test environment, have fun and blow it up, then delete it when done.

      --
      Cogito, igitur comedam pizza.
    14. Re:Just use Postgresql by Anonymous Coward · · Score: 5, Insightful

      You are very right. MySQL is like PHP. That's why people shouldn't use both.

      Avoid stuff where you can have bugs like this:
      http://bugs.mysql.com/bug.php?id=31001
      http://pwnhome.wordpress.com/2011/08/22/php-crypt-bug/
      http://me.veekun.com/blog/2012/04/09/php-a-fractal-of-bad-design/

      And watch the MySQL jokers try to fix this:
      http://bugs.mysql.com/bug.php?id=65111
      And somehow cause this:
      http://bugs.mysql.com/bug.php?id=65745

      I'm a crap programmer, but I prefer to use libraries, tools and languages that are less crap than my stuff. That way at least I spend more time dealing with my own incompetence than someone else's.

    15. Re:Just use Postgresql by mlwmohawk · · Score: 4, Informative

      Not only are you wrong, you are really really wrong here.

      Not only can you run PostgreSQL "out of the box" but you can run multiple instances of it with their own directory. You *never* run postgresql as root as it is not allowed.

      Install or put postgresql in your path, it is really is this simple:

      initdb -D /your/path/to/database
      pg_ctl -D /home/markw/pgtest/data -l logfile start
      createdb mydatabase
      psql mydatabase

      Now, you can configure your version of postgresql to be on a different port than others, you can run it as any non-privileged user. You can configure it to be occupy a pretty small resource footprint or configure it to be huge. You can put a database on almost any file system.

      Anyone who says MySQL is easier is smoking crack.

    16. Re:Just use Postgresql by mlwmohawk · · Score: 3, Insightful

      What you are *really* saying is you think phpmyadmin is better than phppgadmin, which may be perfectly valid. As for "popular," Justin Beeber is currently more "popular" than the Clash.

    17. Re:Just use Postgresql by mlwmohawk · · Score: 4, Insightful

      The database really isn't that important. It only becomes important once a DBA gets their hands on it and starts implementing LOGIC at the database instead of doing the logic in the application and fast, dumb, simple queries at the database.

      That is not true at all. In fact wildly wrong. A good database is the tool you use to manage your data. If your system is properly designed, it is part of your application. A good database will manage concurrency, data integrity, and more. The idea that you move this out into the application geometrically increases complexity, or more likely, is ignored at your peril.

      Just a simple query:
      select * from songs where name like 'love%';
      Assuming you have a non-trivial amount of songs, i.e. a song web site, this query can show a poorly implemented index. Once you start getting into sub-selects and joins, a good database can do quite well, a bad database, i.e. MySQL will fall down.

      People who view the database as nothing but dumb storage usually end up implementing similar features in their code. They won't be as efficient, won't be standard, will cause the data to be processed more than it needs to be, and can't be tested as well as the database's system.

      A good architect will know where and when it makes sense to do something in a database verses the application. Ignoring the capabilities of a database for some idealogical purity is ridiculous.

    18. Re:Just use Postgresql by Bitsy+Boffin · · Score: 3, Informative

      Even the simple task of creating and managing users is much more difficult with MySQL.

      GRANT ALL PRIVILEGES ON database.* TO user@hostname IDENTIFIED BY 'password';

      Creates said user connecting from said host with said password and gives it unrestricted access to said database.

      Pretty difficult huh.

      --
      NZ Electronics Enthusiasts: Check out my Trade Me Listings
    19. Re:Just use Postgresql by rycamor · · Score: 3, Insightful

      While the best option is to get rid of MySQL completely and use the great tools available for PostgreSQL, If you are stuck with MySQL, Adminer is the best thing out there, period. Even though it is web-based, it is a better GUI for MySQL than all the native clients put together. I say this in all seriousness, having had to support MySQL at a large institution for 2 years. Adminer is the only one, for example, that handles UTF-8 correctly. I kid you not. You have to realize that in order to work with MySQL in a full Unicode environment, EVERY SINGLE CONNECTION needs a couple of queries to be run after connecting, and you CANNOT AUTOMATE THIS. Adminer builds that into it's MySQL connection class. This is just one example of the careful thought put into Adminer. Also, the fact that it is web-based is actually a plus, not a negative, because it has a much more standardized way of handling things like copy/paste. Browse a table in Adminer with Firefox, hit the CTRL key, drag the mouse over a column or section of the output, CTRL-C, and you have a perfect spreadsheet-pasteable grid. I haven't been able to find another GUI tool to do this. Adminer FTW.

      Unfortunately, Adminer's PostgreSQL support isn't quite as good as phpPgAdmin, or I would be using it for Postgres. It really has one of the best GUIs I have seen on a web-based app.

    20. Re:Just use Postgresql by rycamor · · Score: 3, Insightful

      That is not true at all. In fact wildly wrong. A good database is the tool you use to manage your data. If your system is properly designed, it is part of your application. A good database will manage concurrency, data integrity, and more. The idea that you move this out into the application geometrically increases complexity, or more likely, is ignored at your peril.

      An increasingly unpopular view these days, sadly. It seems to me that with the advent of Agile and NoSQL, critical thinking skills in the development community are going out of style. Notice the original poster decries the idea of "LOGIC" being part of the data management level. That's right, stuff it all ad-hoc into the application layer and then watch things blow up when someone does a manual updated to a table, or someone (inevitably in large corporations) brings another application to connect to that database.

    21. Re:Just use Postgresql by AtlantaSteve · · Score: 2, Informative

      For me, the one advantage MySQL (and MariaDB, and even Apache Derby!) have over PostgreSQL is that there are versions that can be run stand-alone "out of the box" as a non-root user. PostgreSQL (AFAIK) needs to be installed, and needs to be installed as root (and you need to create a postgres user, etc.).

      There is a reason why no one bothers to make an XAMPP-style "portable" version of PostgrSQL, as they have with MySQL. The reason is that this is dead-simple to accomplish even with the out-of-the-box binaries available on the PostgreSQL site.

      On the PostgreSQL download page, you would download the "zip archive of the binaries", rather than the one-click installer. Unzip the archive's contents wherever you like (including on a USB thumb drive), and then refer to this 3-paragraph PostgreSQL article. It tells you to create a BAT file in your base PostgreSQL directory, cut-n-pasting these contents:

      @ECHO ON
      REM The script sets environment variables helpful for PostgreSQL
      @SET PATH="%~dp0\bin";%PATH%
      @SET PGDATA=%~dp0\data
      @SET PGDATABASE=postgres
      @SET PGUSER=postgres
      @SET PGPORT=5439
      @SET PGLOCALEDIR=%~dp0\share\locale
      REM "%~dp0\bin\initdb" -U postgres -A trust
      "%~dp0\bin\pg_ctl" -D "%~dp0/data" -l logfile start
      ECHO "Click enter to stop"
      pause
      "%~dp0\bin\pg_ctl" -D "%~dp0/data" stop

      The very first time you run this script, you comment-out the bold-face "REM" line... which will initialize a fresh PostgreSQL environment, with admin user "postgres" having a blank password. Then put the "REM" comment back on that line, and you have a complete portable PostgreSQL environment that can be moved from directory to directory and machine to machine.

      This information is obviously Windows-centric... but the whole "portable" concept (in the USB thumb drive sense) is Windows-centric in the first place. If you're on Ubuntu, just "sudo apt-get postgres" and then remove it when you're done tinkering! By the way, you don't need administrator privileges to use the one-click installer on Windows.

      A lot of the discussion that I'm seeing in this thread has more to do with phpMyAdmin vs. pgAdminIII than with MySQL vs. PostgreSQL themselves. To be perfectly frank, if one's biggest concern is what the admin or SQL workbench tool look like... then it doesn't really matter which of these two databases you use. You'll be fine either way.

      The real consideration is whether you need (or would like to explore and learn about) the more "enterprise"-y features offered in PostgreSQL. If you're interested in more enterprise-level functionality, then PostgreSQL is by far the best free game in town. If you're not really interested in that stuff, then you might as well build around MySQL since it's more commonly offered by web hosts and cloud providers.

      By "enterprise"-y, I'm talking about the concept of assuming that more than one application might eventually be using your database (and that the applications might be based on more than one language or technology stack). If you are only using your database through one application, and letting its ORM framework (Java JPA, Ruby Rails, PHP Doctrine, Python SQLAlchemy, etc) be responsible for enforcing all the persistence rules and business logic, then it doesn't make much difference to you as an application developer which database lies behind the framework.

      However, let's say that you have a Rails web application writing to your database on the front-end, and a Java application working with it on the back-end. Maybe you even have some Python or Perl scripts kicked off by a nightly cron job, which build reports based on the data. To give a very trivial example, let's say that one of your table columns holds "customer type", and must be one of 7

    22. Re:Just use Postgresql by mlwmohawk · · Score: 3, Insightful

      you don't have to be a database expert to see that MySQL is still the best supported database back-end for most web application frameworks.

      But it helps if you understand the levels of support and can make an educated decision about whether or not it makes a difference. PostgreSQL, by all meaningful measure, is technically a better database. Choosing MySQL over PostgreSQL, IMHO, is a bad decision for a few reasons: (1) Technically, PostgreSQL is universally regarded as a better technology platform in terms of quality, scalability, performance, flexibility, stability, adherence to SQL standards, etc.. (2) Since Oracle purchased MySQL the TCO has been increasing. (3) Also since MySQL was purchased by Oracle, the GPL-ness of the over-all package is becoming in question. Oracle has the right to stop releasing the product as GPL because of they OWN the copyrights and trademarks. It is not community owned like PostgreSQL.

      So, PostgreSQL is the better technical choice, therefore you should try to use it. If you decide to use MySQL when PostgreSQL would have had more or less equivalent support, you may be painting yourself in a corner needlessly. If you do nothing to avoid the problem and generally accept and cultivate your own ignorance, then you are a bad engineer.

    23. Re:Just use Postgresql by dkf · · Score: 2

      I've played around with Sqlite in the past. I'm not sure I'd want it as a drop-in replacement for either MySQL or PostgreSQL. I must admit, as a Java developer I'm more likely to use Apache Derby, which can be used embedded or client/server.

      I use both SQLite and Derby in projects of mine (not in the same project!) and it is my experience that SQLite is a lot higher quality than Derby. It copes far better with abuse such as killing the process or attempting to access the DB from multiple processes, and it has far higher limits on column sizes. On the other hand, Derby is pure Java so it's easier to embed in a redistributable package, whereas SQLite uses a native JDBC "driver" (actually the DB engine itself).

      The other one to consider is HSQLDB, but I've no practical experience with it.

      --
      "Little does he know, but there is no 'I' in 'Idiot'!"
  4. IMHO... by ZeroPly · · Score: 5, Funny

    Look, by no means FORK! am I a SQL expert, but I still feel FORK! compelled to express my FORK! opinon here. Face it folks, Oracle FORK! is evil. That said, if there is some way FORK! to create a parallel version, a version FORK! not intended to pay for a yacht, I would FORK! be all for it.

    --
    Support microSD: in a post 9/11 world, it is unwise to carry your data on media that you cannot comfortably swallow.
    1. Re:IMHO... by Anonymous Coward · · Score: 5, Insightful

      You mean, like MariaDB, as mentioned in the summary (hint: 3rd word) ?

    2. Re:IMHO... by Darinbob · · Score: 3, Insightful

      SPOON!

  5. Obviously by Nethemas+the+Great · · Score: 3, Insightful

    Oracle has been doing nothing more than gobbling competitors the whole time. Just because the haven't done it overnight doesn't mean that's not what they're doing.

    --
    Two of my imaginary friends reproduced once ... with negative results.
  6. MariaDB by euxneks · · Score: 5, Insightful

    MariaDB is a drop in replacement for MySQL which was forked a while ago: http://mariadb.org/

    --
    in girum imus nocte et consumimur igni
    1. Re:MariaDB by Nethemas+the+Great · · Score: 2, Insightful

      Forks are only drop in replacements for so long. By their very nature they are divergent. Unless they're shepherded by organizations such as the Apache foundation they're also very difficult for corporations to trust and thus adopt.

      --
      Two of my imaginary friends reproduced once ... with negative results.
  7. MySQL sweet spot by Anonymous Coward · · Score: 2, Informative

    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.

    1. Re:MySQL sweet spot by hobarrera · · Score: 4, Insightful

      MySQL is lighter than PostgreSQL.
      SQLite is an embeded database; it's really a different sort of tool altogether.

    2. Re:MySQL sweet spot by Daniel+Dvorkin · · Score: 3, Insightful

      SQLite is an embeded database; it's really a different sort of tool altogether.

      But you don't have to use it embedded. The command line tool is basic but functional, and if you want, say, a web interface to query a SQLite back end, you can do that too. For most of the MySQL use cases, there's really not much difference.

      I worked as a MySQL DBA for years, and I was quite vocal in its defense. Eventually I realized that most of the criticisms of it were entirely reasonable (even if the tone in which they were expressed often wasn't) and that OP is right: use SQLite for stuff that's, well, light, and Postgres for anything that's heavier-duty. The only arguments for MySQL these days are its ubiquity and extensive documentation, and the way Oracle's behaving I don't expect either of those will apply much longer.

      --
      The correlation between ignorance of statistics and using "correlation is not causation" as an argument is close to 1.
    3. Re:MySQL sweet spot by David+Gerard · · Score: 2

      Everything useful is written against MySQL specifically, with Postgres support an afterthought. This sucks, yes.

      --
      http://rocknerd.co.uk
    4. Re:MySQL sweet spot by eric_herm · · Score: 2

      sqlite do not work really well for concurent access, due to locking.

    5. Re:MySQL sweet spot by hobarrera · · Score: 2

      MySQL supports concurrency, doing what you propose, you can handle one request at a time. There's clearly a difference. I don't expect many applications to scale if you can only write with one thread at a time.

      Most of the times, MySQL sits behind some application, the command line too can't replace that scenario.

  8. Re:sqlite did something similar by fatp · · Score: 2

    But Berkeley DB is another oracle product??

  9. Oracle only cares about money by Anonymous Coward · · Score: 3, Insightful

    Larry Ellison believes in one thing: making money.

    If publishing test cases doesn't make money for Oracle and they're not required to do it by law (license, etc) then they won't do it.

    Stop pretending Oracle cares about anything other than money and you'll have a much more accurate and healthy view of the beast.

  10. Re:Translation by MaerD · · Score: 5, Funny

    oracle is actually an acronym: One Rich Asshole Ceo, Larry Ellison

    --
    I put on my robe and wizard hat..
  11. Good, maybe people can start to look elsewehere .. by Anonymous Coward · · Score: 3, Informative

    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.

  12. Close-Sourcing Open-Source Software is Fail by popo · · Score: 2

    I'm not sure I share the same fear that Oracle will close-source MySQL. It's OpenSource, which means by definition that with every invisible line in the sand that they cross, more forks will appear.

    Unless the version-enhancements that Oracle is adding are so great (um.. they're not) there's very little they can do to co-opt the technology without seeing it slip through their fingers.

    --
    ------ The best brain training is now totally free : )
  13. Damn! I should google everything.... by Anonymous Coward · · Score: 4, Funny

    Shit, I didn't know that! I saw MariaDB and I didn't think to google to find out who or what that is supposed to be.

    I guess I'm spoiled by proper editing and writing where it should have been phrased as such:

    "Sergei from MariaDB, a MySQL Fork, speculated on some changes within MySQL 5.5.27."

    But never mind, we should all google and research everything posted here because, not only do most folks talk out of their asses, but by missing some detail like that gives some pedant a chance to post something to make himself feel superior for knowing some esoteric and minor piece of information.

    1. Re:Damn! I should google everything.... by war4peace · · Score: 2

      Anonymous, you are actually right. Many times over have I seen /. news which casually referred to stuff without mentioning WHAT the stuff was. Typical technical staff attitude, expecting that the whole world would simply know.
      This is a general attitude, sadly. Years ago, when I was doing helpdesk work, the least intelligible tickets came from technical staff: "I can't sudo brwnc-u using PLS on TRM, works if I pscp. Fix needed." or "i'm an ASM in PRTC and need a PGP key to FRM ASAP". Seriously?
      And then they wondered why nobody had a clue what to do with those tickets.

      --
      ...gis sdrawkcab (usually not responding to ACs; don't bother posting as AC)
  14. Oracle might see MySQL as competition? by etangreal · · Score: 3, Insightful

    What if Oracle is planning to slowly slowly kill off/degrade MySQL? By with-holding the test cases / not putting in effort into new features/development. If opensource contributors cant test properly - they would create a buggy, unstable/inferior product in the future. According to what I know - Oracle is in the database business, MySQL is "competing" database of sorts... Why would oracle want to keep it around? Its not in their interest, right?

  15. WHY is still anyone using mysql, when there is PG? by someones · · Score: 5, Insightful

    WHY is still anyone using mysql, when there is Postgresql?

  16. Just fork it by jonwil · · Score: 4, Funny

    Forking worked for Libreoffice, I dont see why it couldn't work for MySQL...

  17. Re:No. by maxwell+demon · · Score: 2

    Someone should write an article with the headline "Is it reasonable to mention Betteridge's law of headlines every time an article appears whose headline is a question?"

    --
    The Tao of math: The numbers you can count are not the real numbers.
  18. slashdot should stop accepting questionmarks by allo · · Score: 3, Funny

    in the title of a story.

    would prevent a lot of bad written summaries.

  19. Re:Want to guess why MySQL is called MySQL? by erroneus · · Score: 2

    Okay, my head exploded... thanks.

  20. Re:Translation by Bill+Dimm · · Score: 5, Funny

    I believe it is One Rich Asshole Called Larry Ellison

  21. MySQL tombstone: G.I.F. by epine · · Score: 5, Interesting

    Postgres support is typically volunteer-maintained by one person

    This would double overnight if MySQL were declared pariah non grata, which is precisely the negotiation taking place in this kind of discussion thread.

    Speaking of PNG, you do recall the Unisys GIF debacle? When MySQL dies, may its tombstone read G.I.F.

    1. Re:MySQL tombstone: G.I.F. by Lordrashmi · · Score: 2

      And it has, see MariaDB. A complete drop in replacement with added features. Full disclosure: I work on the project.

  22. PostgreSQL in your home directory by greg1104 · · Score: 2

    I maintain a utility named peg that makes it straightforward to install a local copy of PostgreSQL in your home directory. It's aimed at developers who want a local copy they can tinker with as a non-root user. It even includes shell aliases for starting and stopping the server. If you have all the necessary development tools to compile PostgreSQL, you can have a working install in four lines of typing:

    mkdir -p pgwork
    peg init test
    . peg build
    psql

    I haven't made things like building from one of the stable release versions easy yet, but that's mainly because my users so far use peg to hack on the PostgreSQL code and write/test new features. That would be easy enough to add if I saw any demand for it.

    Compilation might see over the line of not being an "out of the box" install. Packaging the software takes far too much build and QA time for the people involved in that to bother for this fairly small niche, people who want home directory, non-root installs.

    Note that while I mainly targeted peg at Linux systems, I've tested it and it can work just fine from OS X too. When I last used Homebrew to get all the development tools on the system on that platform, peg Just Worked after that.

  23. Re:Postgres by Sxooter · · Score: 2, Informative

    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.