Beta
×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

MySQL 5.0 Candidate Released

CmdrTaco posted about 9 years ago | from the it'll-be-awhile-before-we-get-to-upgrade dept.

Databases 339

Brian "Krow" Aker (Former Slashdot Coder now MySQL Employee) writes "I am pleased to announce the release candidate for MySQL 5.0. This version has been in development now for three years. We have worked to add update-able views, ansi stored procedures, and triggers. In addition we have added a number of fun features that we are experimenting with and resolved issues with bad data inserts (which personally annoyed the hell out of me when we rewrote Slashdot a couple of years back so I am happy to see this issue go away). We look forward to feedback on the candidate and will show some love for bug reports."

Sorry! There are no comments related to the filter you selected.

Time for new comparisons to be made. (4, Interesting)

CyricZ (887944) | about 9 years ago | (#13657557)

It's time for somebody to do a new, impartial study regarding the performance and feature benefits of this new release of MySQL, PostgreSQL, Firebird, SQLite, and perhaps other open-sourced relational databases.

Re:Time for new comparisons to be made. (2, Insightful)

KiloByte (825081) | about 9 years ago | (#13657581)

And of course you can't include Oracle in any impartial study.
Hmm... do I smell... fear?

Having worked with oracle 10i for the last year (0, Redundant)

hummassa (157160) | about 9 years ago | (#13657604)

And Oracle 7 for the two years before -- in a not-so-large database -- I think there is not much to fear...

Re:Having worked with oracle 10i for the last year (4, Insightful)

kpharmer (452893) | about 9 years ago | (#13657823)

> And Oracle 7 for the two years before -- in a not-so-large database -- I think there is not much to fear...

Actually, no: many databases these days are now supporting various types of logs - in which you've got tables with tens of millions of rows. Oracle and DB2 have the following in place to support massive tables:
1. query parallelism - that provides linear performance improvements up to 4 cpus or so
2. data partitioning - that allows the database to just scan data needed, rather than entire table when indexes aren't appropriate (b-tree indexes only work for around 1-3% of data)
3. materialized views - in which views actually hold data - and this data is kept up to date by the database server. Often used for summary tables.
3. query rewrite - in which your queries are automatically re-written to apply to a summary table (see materialized view) if one exists.
4. clustering - in which data spans multiple servers, and all servers work together on your query.
5. smart optimizer - intelligent score-based optimization responsible for determination of best access paths for your queries.

With the above features db2 or oracle can drive 40x the performance of mysql or postgresql in a reporting application (or transaction one with a few large scan-oriented tables) on identical hardware (say a 4-way SMP). If you didn't see an impact from these features then either you have one of the fairly rare apps that can't benefit, or you should revist the design.

Don't get me wrong - I really like postgresql. But neither it nor mysql is even in the ballpark for performance on db2 or oracle. Nor is the price much different - db2 is only around $700 for 4/5 of the above features on a 2-way smp vs $500 for mysql. Eventually mysql & postgresql will support these features. But it'll probably be five years before they are working well.

Re:Time for new comparisons to be made. (2, Informative)

schon (31600) | about 9 years ago | (#13657638)

Correct [66.102.7.104] . If you're measuring performance, then you *can't* include Oracle.

Re:Time for new comparisons to be made. (5, Interesting)

tdemark (512406) | about 9 years ago | (#13657639)

And of course you can't include Oracle in any impartial study.

You could, except for the fact that the license you just paid thousands per CPU for doesn't allow you to publish [orafaq.com] the results.

Re:Time for new comparisons to be made. (0)

Anonymous Coward | about 9 years ago | (#13657966)

except for the fact that the license you just paid thousands per CPU

What does the pricing for one of their license alternatives have anything to do with this?

You didn't read my post. (1)

CyricZ (887944) | about 9 years ago | (#13657659)

Had you read my post, you would have seen that I limited it to open source relational databases. Oracle is not, as of now, an open source piece of software. And I believe their licensing agreement prohibits the disclosure of benchmarking data.

Re:You didn't read my post. (0, Troll)

ajs318 (655362) | about 9 years ago | (#13657803)

And I believe their licensing agreement prohibits the disclosure of benchmarking data.
EULAs are legally unenforcible in most jurisdictions, so the worst offence you could be accused of would be libel. And the fact that whatever you said is true is an absolute defence to libel. I say go ahead, publish and be damned!

Re:Time for new comparisons to be made. (2, Funny)

RealityMogul (663835) | about 9 years ago | (#13657601)

Call up Microsoft, I'm sure they'd love to sponsor the study.

Re:Time for new comparisons to be made. (3, Interesting)

ceeam (39911) | about 9 years ago | (#13657781)

But puhhhlease, don't put MySQL performance based on MyISAM and feature set based on InnoDB! Stick to either one. BTW - last I checked for myself, Firebird was beating _even_ MyISAM for raw speed on simple queries for local engine. Something I did not expect. Oh, yeah! When comparing performance please include results for local engine AND over-the-LAN performance. Different beasts have different protocol issues that show up when using "real" LAN and may be masked when using "local" engine mode. For example, MySQL has very simple and LAN-friendly protocol. Unlike Firebird, but it's still ok. And MSSQL, EG, has very, very serious issues when used for lots of "simple" queries.

Re:Time for new comparisons to be made. (0)

Anonymous Coward | about 9 years ago | (#13657820)

Throw MaxDB in to the mix too.

Hear that? (-1, Flamebait)

Anonymous Coward | about 9 years ago | (#13657559)

... that is the sound of nobody caring.

Is it a "real" database yet? (4, Interesting)

digidave (259925) | about 9 years ago | (#13657569)

Every time any database is mentioned on Slashdot we get a load of comments about how MySQL is not a "real" database because it doesn't support {insert random feature here}.

Is it a real database yet?

Re:Is it a "real" database yet? (3, Informative)

mmkkbb (816035) | about 9 years ago | (#13657586)

Actually, most of those features are in MySQL 4. The two big problems are: Lots of people still run MySQL 3.x, and these features only work for certain table types.

Re:Is it a "real" database yet? (0)

Anonymous Coward | about 9 years ago | (#13657614)

I think you mean 4.1, which finally gave people subselects.

Re:Is it a "real" database yet? (3, Insightful)

LLuthor (909583) | about 9 years ago | (#13657660)

MySQL selects do not use indexes when there are sub-selects most of the time. This makes them practically useless unless you can re-factor the query to use a convoluted join instead.

Sub-selects suck in mysql compared to postgresql or oracle. I havent used other DBs much so I don't know how well they perform.

Of course it's a "real" database. (1)

CyricZ (887944) | about 9 years ago | (#13657596)

Of course it's a real database. People have been successfully using it for years. Maybe at one point it didn't comply with the formal definition of a "relational database" due to missing features, but nevertheless was still a suitable product for many. And that alone is enough for it to be considered a "real" database.

Re:Of course it's a "real" database. (0, Flamebait)

Anonymous Coward | about 9 years ago | (#13657665)

MySQL is a real database the same way IE is a real Web browser.

Re:Is it a "real" database yet? (5, Interesting)

codesurfer (786910) | about 9 years ago | (#13657622)

I'd say so...despite the detractors, I've been able to use MySQL for many highly trafficed sites, and heavily used applications. Does it have the full robustness of Oracle? Of course not, but it also does not come with the accompanying price tag. Choice of db software is just that...a choice. I can envisage situations in which I may prefer having Oracle, but to be honest, MySQL addresses most day to day situations more than adequately. It's a real db, IMO.

Re:Is it a "real" database yet? (1)

NineNine (235196) | about 9 years ago | (#13657647)

We have worked to add update-able views, ansi stored procedures, and triggers.

It's much closer. As to whether it has ALL of the features yet, I personally don't know because I don't use it. Updateable Views, Stored Procedures and Triggers are all a big step in the right direction. Now, for anybody who's serious about their data (like I am), there will be a waiting period of a few years while the kinks are worked out, before it's really ready to be compared to other, more mature databases that have had these features for 10 or 20 years.

Re:Is it a "real" database yet? (1, Funny)

Anonymous Coward | about 9 years ago | (#13657673)

Ah yes, it's very important that you be serious about your databases of free porn. I'm sure your customers are very concerned (:

I think you miss the point (5, Informative)

Fished (574624) | about 9 years ago | (#13657668)

The point is not whether MySQL is a "real" database. Clearly, it is a real database that is capable of doing real work.

The point is that, even in recent versions, MySQL has some serious limitations that other OSS databases (e.g. PostgreSQL) do not suffer from, and no really significant corresponding advantages. MySQL was not designed from the ground up to be many things it is now trying to be--it was not designed to support transactions, it was not designed to support foreign keys, it was not designed to support stored procedures. It was initially conceived as a small, fast database for managing very large datasets in a warehousing sort of role. PostgreSQL, on the other hand, was always conceived of as being a heavier-duty database, and this shows in terms of feature completeness and SQL standard compliance.

Given that the performance differential (which was always overstated) has been overcome, why would you want to go with MySQL only to discover what the latest feature to be missed was? What's the advantage to MySQL?

Re:I think you miss the point (1)

mytec (686565) | about 9 years ago | (#13657846)

it was not designed to support transactions, it was not designed to support foreign keys

Forgive my ignorance, but if a plug-in design allows for table handlers to be added that support missing feature(s), what is inferior/wrong with that? It would seem MySQL was designed with modularity in mind. InnoDB supports the features you mentioned, and that I quoted, so why is that less desireable than having the table handler builtin?

What's the advantage to MySQL?

For me, the massive community is a big plus. A rich set of tools is another advantage.

Re:I think you miss the point (0)

Anonymous Coward | about 9 years ago | (#13657930)

The issue is (or was) that you could write "BEGIN TRANSACTION" or add a foriegn key, and only your DBA knew if actually worked or not.

Re:I think you miss the point (3, Informative)

kpharmer (452893) | about 9 years ago | (#13657963)

> InnoDB supports the features you mentioned, and that I quoted, so why is that less desireable than having the table handler builtin?

Because it is core functionality.

Having a separate product responsible for managing io may be one of the reasons that mysql's optimizer is so primitive - and may be a reason why they will struggle to improve it. Note: the optimizer is the component responsible for determination of how your joins will be performed under the covers - mysql is notorious for failing to use indexes it should, using indexes when it shouldn't, never using star-joins, five-way joins that day 10x as long as they would in any other database, etc.

Perhaps it's also why views took forever to implement, and materialized views might take another forever.

It's also perhaps the reason for all the inconsistencies in table creation.

There are also benefits to using innodb - it has undoubtably speed up mysql's development by several years. Still, now it's a boat anchor that should be abandoned.

> For me, the massive community is a big plus. A rich set of tools is another advantage.

yep, although it may be the only advantage that mysql has, it's a huge one.

Re:I think you miss the point (2, Interesting)

should_be_linear (779431) | about 9 years ago | (#13657879)

I can tell you what MySQL advantege over PostgreSQL and Firebird was *for me*:
1) Easy to install in Windows. PostgreSQL is (AFAIK) goof _now_ but was not then. Firebird was/is OK in this area.
2) "Spatial" type/index, Fulltext index. Postgis is available for PostgreSQL but as plugin, not out-of-the-box, fulltext is (AFAIK) beta and not very unicode-reliable. I prefer both things to be integrated as I distribute DB engine with my SW. Firebird miss spatial type (just as MS SQL, for example (!)) so it is useless for me.

One thing where MySQL suck is mingw (gcc) support on windows. If you need to connect from C/C++ in windows, use MS VS, otherwise you wil suffer.

Re:I think you miss the point (1)

pico303 (187769) | about 9 years ago | (#13657958)

Dude, what are you doing on Slashdot running Windows? You're going to get yourself killed.

Re:I think you miss the point (0, Troll)

should_be_linear (779431) | about 9 years ago | (#13657981)

I am at work, at home I have Ubuntu Linux! True! Don't shoot, please!

Re:I think you miss the point (1)

electroniceric (468976) | about 9 years ago | (#13657885)

User community, user community, user community.

MySQL is a great example of how the GPL can motivate the use of a product. Because MySQL was one of the earliest DBMS to go GPL, it got embedded into a huge number of GPL applications, and developed the wide range of users that has made getting answers, documentation, tutorials, discussion, etc much easier than its BSD-licensed counterpart. Same phenomenon as Linux and *BSD. Is Linux "better" than *BSD? Who knows, but it's so much more widely used that it's a lot easier to get into it. This is roughly the same reason Windows people run SQL Server.

I run Postgres here at work, and I think it's a fantastic database. In particular, it's well suited for anything science-like because its whole workings are there to see, from indexing algorithms to writing of aggregates to storage choices. It is reputed to get a bit slow on SELECTS when it has huge amounts of data (MVCC giveth and taketh away), but given how much any database's peformance depends on smart indexing, I'd take individual claims of snailesque performance with a dose of salt.

Overall, MySQL's development is great for OSS in general. If you get started, and it doesn't do what you need, you're likely familiar enough with how OSS works to move to Postgres. It also puts price pressure on everyone, which makes more tools available to more developers (part of the point of OSS in the first place).

Re:I think you miss the point (-1, Troll)

Anonymous Coward | about 9 years ago | (#13657943)

You've obviously never used MySQL. PostgreSQL's performance issues have not been overcome, not by a long shot. I have an application that has to run on MySQL, PostgreSQL and Oracle. It has to do a lot of mass retrievals, and few transactions. Guess which is the fastest by far? Guess which is the slowest by far? Even with a heavily tweaked PostgreSQL, it's over 20x slower! Anything using extensive count(*) is unusable on PostgreSQL. This is a design fault, openly admitted on their mailing lists, where it comes up all the time. PostgreSQL may be fine a low volume transaction applications, but where you need performance, it always has been and looks very likely to remain the slowest dog on the block.

MySQL becomes even faster when you use InnoDB tables.

You have a hang up on "features", I guess you don't do much real business

development where results have to be delivered. A professional uses the right tool for the job, not preach fanboi retoric like you.

Nice troll, but you were rumbled. And for you information PostgreSQL was not designed from the ground up, it was an old dead application let out to opensource.

SlashDot (1)

Chaotic Spyder (896445) | about 9 years ago | (#13657719)

If it's good enough for Slashdot [slashcode.com] .....

Re:Is it a "real" database yet? (3, Insightful)

Anonymous Coward | about 9 years ago | (#13657768)

I cannot trust MySQL to store data reliably until the MySQL give a clear explanation as to why they made decisions that no competent database developer would ever make.

For example, you have a constraint limiting a column to a maximum of 99. You attempt to enter 999 as a value, and it got silently altered to 99. Not only is it against SQL standards, it's also completely and utterly the opposite of common sense.

Just once, I'd like to hear a MySQL developer say "yeah, I don't know what we were thinking, that's a really fucked up thing to do". It doesn't matter whether this intentional bug got fixed, what matters is that there are MySQL developers that thought that this was a reasonable thing to do.

That's not an isolated incident, either. There are reams and reams of utter idiocy along exactly those lines. So really, what would it matter if they've fixed those particular instances? How do I know they haven't introduced a dozen more breakages along those lines? So far, they haven't shown any indication that they even realise how fucked up that is - so why on earth would I trust them with data that matters?

Re:Is it a "real" database yet? (0)

Anonymous Coward | about 9 years ago | (#13657915)

So we should blame for things that they do wrong, and blame for fixing them? Can they ever win? Can anyone ever do well in anything with that fucked up opinion of yours?

Re:Is it a "real" database yet? (0, Troll)

ajs318 (655362) | about 9 years ago | (#13657951)

there are MySQL developers that thought that this was a reasonable thing to do
I have to admit, it seems to me like a totally reasonable thing to do.
So far, they haven't shown any indication that they even realise how fucked up that is
Maybe because it's not fucked up at all? Look up "graceful degradation" sometime.

If you have a web browser running on hardware that, for some reason or another, cannot display bold text, what should it do?
  1. Ignore the <strong> and </strong> tags altogether, and display the text anyway, although not bold;
  2. Crash horribly with an error?
You're accessing the database server from a scripting language. You know what the constraints are. If you're that bothered, you'll check before you try to insert the data. If you haven't bothered to check, you deserve what you get.

Re:Is it a "real" database yet? (1)

EntropyEngine (890880) | about 9 years ago | (#13657970)

Well I haven't been using a proper database for years, then. How bad is that?

Add bloat, stay fast (2, Interesting)

jurt1235 (834677) | about 9 years ago | (#13657574)

I welcome stored procedures triggers very much, as long as they are fast enough to compete with the current "just program it yourself in you chosen language" style. Anyway: Another stored procedure language to learn.

Re:Add bloat, stay fast (1)

jurt1235 (834677) | about 9 years ago | (#13657602)

And yes, I know: SQL:2003 standard. I am used to PL/SQL and SAS. At least one reason less to want to use oracle.

Re:Add bloat, stay fast (2, Informative)

Dan Ost (415913) | about 9 years ago | (#13657917)

In PostgreSQL, you can write your stored procedures in
Python, Perl, and a couple of other languages. It probably
won't be too long before MySQL allows the same thing. With
any luck, you won't need to learn a new language at all.

How does the source code quality compare? (2, Interesting)

CyricZ (887944) | about 9 years ago | (#13657576)

How does the source code quality of this new release of MySQL compare to that of projects like PostgreSQL or Firebird, which have a far longer history and/or were formerly commercial developments?

Re:How does the source code quality compare? (1)

loconet (415875) | about 9 years ago | (#13657657)

Are you saying that PostgresSQL, Firebird may have better source quality because of their background? They may have better codebase but far longer history and commercial background does not equal good source quality. Some might say it's actually the opposite.

Re:How does the source code quality compare? (4, Informative)

JohanV (536228) | about 9 years ago | (#13657658)

How do you want it to compare?

Source code quality is not easy to compare. At a first glance, MySQL is doing very good. They have this nice blurb [mysql.com] about only having 1 defect in 4000 lines being more then 4 times better then with most commercial software. But if you dig deeper, you notice that PostgreSQL has been tested by the same company and only had 1 defect in every 39000 lines [enterprisedb.com] of code. Wow, so PostgreSQL must really be a lot better then MySQL.
But if you dig even deeper, you will find some explanation from a PostgreSQL developer [advogato.org] and you remember what your mother told you about lies, damned lies and statistics.

You want to know about source code quality? Go read the source.

slashcode to become slashdotted? (0, Offtopic)

enoraM (749327) | about 9 years ago | (#13657585)

slashcode is loading slow - I thougt at least some people were bright enough to not link to their own site.

Integrity? (1, Insightful)

Anonymous Coward | about 9 years ago | (#13657589)

Does 5.0 have all the issues with data integrity sorted out? These are VERY important to me.

Working "ROLLBACK" even with millions of rows.
No silent data truncation.
No silent "BEGIN TRANSACTION" on unsupported table types.
No being able to drop a table if it is referenced in a foreign key.
etc etc.

Once these are fixed, I will look at how well it performs compared to real DBMSs.

SCO (-1, Troll)

StonedRat (837378) | about 9 years ago | (#13657599)

Can we trust mysql to be nice folks when they're in cahoots with SCO?

http://ir.sco.com/ReleaseDetail.cfm?ReleaseID=1720 37 [sco.com]

Re:SCO (2, Interesting)

jurt1235 (834677) | about 9 years ago | (#13657643)

Can we trust HP (linux everything campaign) while they are strategic SCO partner?
Can we trust Oracle (Linux is our main development platform) while they are strategic SC partner?
And many many more.
Maybe we can even find the website of a dictatorship using MySQL, oh.

Re:SCO (1)

ghukov (854181) | about 9 years ago | (#13657654)

{sarcasm}hmmm, but for how much longer?{/sarcasm} I sure hope they don't try to pull some reverse licensing scheme... let it get all integrated, and then oh... btw, you owe us $799 per proc

Re:SCO (1)

houseofzeus (836938) | about 9 years ago | (#13657686)

http://www.eweek.com/article2/0,1895,1846635,00.as p [eweek.com]

You may care to note that the MySQL backers weren't alone in forming links to SCO. Does this mean that we should boycott Postgresql as well? Or just continue to generate FUD about MySQL because you have a chip on your shoulder?

Re:SCO (1)

MindStalker (22827) | about 9 years ago | (#13657698)

Oh come on. SCO licensed MYSQL to include it in their UNIX distribution. This isn't exactly some sort of secret plot.

Anyone know of a good free MySQL GUI? (2, Interesting)

lion2 (779555) | about 9 years ago | (#13657624)

Something that is comparable and as easy to use as SQL Servers Enterprise Manager. The tools available on MySQL's site aren't very good. My main concern is easy importing and exporting to and from Microsoft Access. For example I can just copy records from access and easily paste them into SQL Server. Thanks for the help.

Re:Anyone know of a good free MySQL GUI? (3, Informative)

Chagrin (128939) | about 9 years ago | (#13657634)

Use the MyODBC driver. Link the tables with Access and cut and paste all you want.

Re:Anyone know of a good free MySQL GUI? (3, Informative)

Anonymous Coward | about 9 years ago | (#13657651)

Aqua Studio is very good (http://www.aquafold.com/ [aquafold.com] ) links to most different db types as well as standard ODBC

Re:Anyone know of a good free MySQL GUI? (1)

ThogScully (589935) | about 9 years ago | (#13657707)

I personally find the phpMyAdmin web interface far more friendly than SQL's Enterprise Manager.
-N

Re:Anyone know of a good free MySQL GUI? (3, Informative)

JohnnyBigodes (609498) | about 9 years ago | (#13657730)

Sorry about the "free" part, but Navicat [navicat.com] is the best MySQL interface that I've seen to date, and I've tried quite a few (not all of them, obviously :)

Re:Anyone know of a good free MySQL GUI? (1)

lion2 (779555) | about 9 years ago | (#13657751)

Well I do prefer free, but if the price is right and the gui is great then I would be willing to buy it.

Re:Anyone know of a good free MySQL GUI? (1)

PeeAitchPee (712652) | about 9 years ago | (#13657736)

phpMyAdmin [phpmyadmin.net] is great for those of us working with PHP.

Re:Anyone know of a good free MySQL GUI? (2)

minus_273 (174041) | about 9 years ago | (#13657881)

EMS MySQL Manager [sqlmanager.net] 3 Lite is by far the best

Re:Anyone know of a good free MySQL GUI? (0)

Anonymous Coward | about 9 years ago | (#13657810)

Re:Anyone know of a good free MySQL GUI? (2, Informative)

FlopEJoe (784551) | about 9 years ago | (#13657893)

Aqua Studio [aquafold.com] is some good stuff. I haven't used it for MySQL but it's an option when registering a new database. Aqua is available "for personal use only" so not quite "free."

OS: Windows, Linux, OSX, Solaris

RDBMS: Oracle, DB2 UDB, MS SQL Server, Sybase, Informix, Postgresql, MySQL

Examine t he license carefully!! (5, Informative)

scorp1us (235526) | about 9 years ago | (#13657646)

After the 3.x series, the license changed drastically. Of course you won't find this discussed much. The permitted uses of MySQL as GPL are significantly reduced. You can only use MySQL in conjuction with OSS. Previously, you could use MySQL in a non-GPL environment under several permissive conditions. The new license is so restrictive now that a special exception is made for PHP

Specifically: [mysql.com]

        * MySQL is free use for those who are 100% GPL. If your application is licensed under GPL or compatible OSI license approved by MySQL AB, you are free to ship any GPL software of MySQL AB with your application ('application' means any type of software application, system, tool or utility). You do not need a separate signed agreement with MySQL AB, because the GPL license is sufficient. We do, however, recommend you contact us as there usually are good opportunities for partnership and co-marketing.


        * Under the Open Source License, you must release the complete source code for the application that is built on MySQL. You do not need to release the source code for components that are generally installed on the operating system on which your application runs, such as system header files or libraries.


        * Free use for those who never copy, modify or distribute. As long as you never distribute the MySQL Software in any way, you are free to use it for powering your application, irrespective of whether your application is under GPL license or not.


        * You are allowed to modify MySQL Software source code any way you like as long as the distributed derivative work is licensed under the GPL as well.


        * You are allowed to copy MySQL binaries and source code, but when you do so, the copies will fall under the GPL license.


        * Optional GPL License Exception for PHP. As a special exception, MySQL AB gives permission to distribute derivative works that are formed with GPL-licensed MySQL software and with software licensed under version 3.0 of the PHP license. You must obey the GNU General Public License in all respects for all of the code used other than code licensed under version 3.0 of the PHP license.


        * FLOSS License Exception. We have created a license exception which enables Free/Libre and Open Source software ("FLOSS") to be able to include the GPL-licensed MySQL client libraries despite the fact that not all open source licenses are compatible with the GPL (this includes the PHP license version 3.0). Read more about the FLOSS License Exception.



Considering the new license and still lacking features, there is little reason to use MySQL. Postgres has "all that anda bag of potato chips."

Re:Examine t he license carefully!! (1)

tomstdenis (446163) | about 9 years ago | (#13657691)

* You are allowed to copy MySQL binaries and source code, but when you do so, the copies will fall under the GPL license.

Loophole. So take their code, release it under GPL. Boom instant open source project.

Tom

Re:Examine the license carefully!! (1)

Chris_Jefferson (581445) | about 9 years ago | (#13657745)

No, their license is giving you more than the GPL. One of the GPL's biggest problems is it doesn't play friendly with many other OSS licences, so they are putting in a special exception to allow you to link to more things (such as things under the PHP licence). Of course, as you say, you can always have the GPL if you don't like their licence.

Server usage not shipping applications... (2, Insightful)

Anonymous Coward | about 9 years ago | (#13657741)

The license you describe doesn't say anything about server usage.
Clearly, the main-use for MySQL lies in server-client architecture. As long as you do not ship your self-created web-application, I see no reason you should be suspicious about MySQL.

Re:Examine t he license carefully!! (1)

Tony Hoyle (11698) | about 9 years ago | (#13657757)

The license exception is meaningless.

Mysql is GPL.. you link it with an LGPL library & distrubute.. OK the license exception appears to allow that.

Now someone links the LGPL library with a closed source application. The LGPL allows that. However the GPL in MySql does not.

Only two interpretations are then possible:

1. The whole package must be GPL - the license exception is meaningless.
2. The license exception holds.. the GPL in Mysql is meaningless.

Re:Examine t he license carefully!! (4, Interesting)

Scarblac (122480) | about 9 years ago | (#13657776)

In short:

  • If you don't distribute MySQL, you're under no restriction whatsoever
  • If you do want to distribute, MySQL is GPL
  • Besides, MySQL goes out of their way to give you even more freedom to distribute it if you want to bundle it with stuff that has one of several incompatible licenses

Sounds good to me!

Re:Examine t he license carefully!! (1)

MikeBabcock (65886) | about 9 years ago | (#13657788)

You're right and wrong at the same time.

Its not that they've restricted the GPL (this doesn't work), its that they relicensed the libraries from LGPL to GPL so that linking against them would cause your program to be GPL'd.

In the "old days" you could link your proprietary app against the LGPL'd version of the MySQL client and be able to access your database server. Now, since the client is GPL'd, you can't do this.

I had many discussions on the MySQL users mailing list about the legal restrictions on this, including whether code released under PHP,Python,PERL using their respective 3rd party connectors (which each linked to the MySQL client) needed to be GPL'd. I was told yes.

Re:Examine t he license carefully!! (3, Insightful)

T-Ranger (10520) | about 9 years ago | (#13657857)

Under the Open Source License, you must release the complete source code for the application that is built on MySQL

Well, I suppose that is a question of semantics. I would say that if you take MySQL had hack it, relese it as BobSQL, then this applies - BobSQL is built with MySQL. If you write a recepie organizer that uses MySQL, then you need to do nothing.

Read more about the FLOSS License Exception.

What is the problem? MySQL has a client library, which is released under the GPL. Generaly, if you want to use and distribute MySQL client libraries, you also need to release whaterver is yours as GPL. If its commercial, you can always buy a license from MySQL AB. For other OSS project this may be unacceptable - and for PHP it was, for example. So provided that these other OSS projects conform to specific guidelines, they are free to distribute the client libs.

You always, always, have the option of using MySQL in a non OSS enviroment. Buy a license.

I cant see how their license plan could be any more friendly, unless they switch to a BSD style license. Want to just use it? Knock yourself out. Want to hack on it and continue to release it under the GPL? Knock yourself out. Want to release it with another, non-GPL, OSS license? Knock yourself out. Want to not release the source? Buy a license.

Re:Examine t he license carefully!! (2, Insightful)

OneFix at Work (684397) | about 9 years ago | (#13657905)

The key paragraph here is this one:

* Free use for those who never copy, modify or distribute. As long as you never distribute the MySQL Software in any way, you are free to use it for powering your application, irrespective of whether your application is under GPL license or not.

So, unless you actually distribute/modify/copy MySQL, then you are free to do whatever you want with the database.

This is actually why some of the newer Linux distros don't include a version of MySQL with the OS...it's offered as a seperate RPM/DEB/PKG/etc...

Nothing has changed...this doesn't mean that you can't write an app that uses MySQL and release it under a LGPL/BSD/Proprietary license...as long as you aren't modifying the code in MySQL, then you're fine.

Postgres may have a few things going for it over MySQL, but license is not really one of em...

Re:Examine t he license carefully!! (1)

ajs (35943) | about 9 years ago | (#13657938)

It is worth noting that this "highly restrictive license" that they are using is called the "GPL". What the linked page does is just to set some conditions under which you are free of the GPL's requirements for software that incorporates their code.

Of course, all of the usual provisos stand: the GPL is a license, not an EULA, so you don't have to agree to be bound by its terms to *use* the software (the GPL is quite clear on this).

All of these issues exist for ANY GPL-covered library code, and all MySQL is doing is playing by the rules of the GPL in exactly the way people like RMS have requested (this is why the LGPL is backronymed into meaning "LESSER Gernal Public License").

It should also be pointed out that in a language like, say Perl, where code is distributed as text, not as a pre-compiled representation, the claim of tainting can really only be applied to the AST, and not the text which generated it. Should that AST be used to generate stored code (e.g. compiled machine code or a bytecode representation) then that code might be tainted (that's deep laywer territory, so I'm not qualified to say one way or the other).

MySQL 3 - MySQL 5 (3, Interesting)

Scoria (264473) | about 9 years ago | (#13657656)

I certainly have to give them credit for one thing. The MySQL developers have been subjected to some very harsh criticism over the years, but few would accuse them of ignoring it.

It impresses me that they actually seem to be listening.

Re:MySQL 3 - MySQL 5 (1, Insightful)

Anonymous Coward | about 9 years ago | (#13657696)

They are only subject to harsh criticism due to their attitute (which may have changed since).

They used to simply shrug off features like transactions and views saying things like "you don't need them", and "you can code around them in your app".

To date, mysql (4.1) does not maintain data integrity anywhere near as completely as real DBMSs do.

Backups (1)

ad0le (684017) | about 9 years ago | (#13657667)

The one area that has always annoyed me with postgresql and mysql was the lack of a good backup system. You have to script the entire database to do a backup. Oh vacuuming a database sucks as well!

Re:Backups (1)

Kranfer (620510) | about 9 years ago | (#13657700)

That is one that I had found annoyed the DBA's at work as well, which is why they switched to DB2. Stupid reason if you ask me... if its free and open source, why not work around it and save the company $60000 heh.

But I agree, scripting for a backup can be rather annoying to anyone.

Re:Backups (2, Interesting)

electroniceric (468976) | about 9 years ago | (#13657717)

Having to dump to a script is both a blessing and curse. For any database that dumps to less than the size of a CD, it's actually very portable, and allows you to clean up your database with substantially more ease than a binary format. The curse of course is that you can't just reattach your binary backup and have the database go again. Also, since 8.0, Postgres has had a binary backup format, and has done a thorough job resolving dependencies (a really nuisance in 7.x).

Re:Backups (1)

Dan Ost (415913) | about 9 years ago | (#13657973)

Oh vacuuming a database sucks as well!

Assuming that you're refering to PostgreSQL, vacuuming
is now a background process that doesn't interfere with
normal database operations. It's not like the old days
when you had to stop using the database to vacuum it.

SCO will claim ownership (0)

Anonymous Coward | about 9 years ago | (#13657672)

since they signed that agreement with mysql to cooperate on development so that it works on SCO unix no doubt they will eventually claim certain propreitery features they supposedly invented were put into it. Ridiculous, but so is their linux lawsuit.

Please stop the MySQL Bashing... (4, Informative)

Anonymous Coward | about 9 years ago | (#13657679)

Before all the MySQL bashing starts can we please stop and have an intelligent conversation? The bottom line is that MySQL works great! For all those people who say .. "ya its a kids toy" well look at some of the sites and companies that are using mysql.. "Friendster" , "The Friendfinder network" , "Yahoo!" .. These sites each have millions of active members and are running just fine. Where else can you load up a 50+ database cluster and not have to shell out a fortune on licensing fees? All the developer tools are great!!

Re:Please stop the MySQL Bashing... (3, Insightful)

ad0le (684017) | about 9 years ago | (#13657704)

Where else can you load up a 50+ database cluster and not have to shell out a fortune on licensing fees?

PostgreSQL [postgresql.org]

Re:Please stop the MySQL Bashing... (1)

ad0le (684017) | about 9 years ago | (#13657738)

Ohhhh... BTW, PostgreSQL is the database behind the .org TLD servers as well.

Re:Please stop the MySQL Bashing... (1)

LLuthor (909583) | about 9 years ago | (#13657740)

Where else can you load up a 50+ database cluster and not have to shell out a fortune on licensing fees?

PostgreSQL? [postgresql.org]

Re:Please stop the MySQL Bashing... (0, Redundant)

bogaboga (793279) | about 9 years ago | (#13657746)

Hey...we have to talk about these gotchas: http://sql-info.de/mysql/gotchas.html [sql-info.de] . Remember, this is the land of freedom.

Still waiting for a programmable GUI (1, Interesting)

bogaboga (793279) | about 9 years ago | (#13657683)

I am still waiting for a database system/program that will have a GUI as programmable as that of MS-Access. I have not looked at this latest release, but all the GUIs I have looked at up to now do not cut it! The talk of PHPMyAdmin, Navicat, MySQL Control Center and the like, reaffirms my conviction of un-seriousness on the matter of putting business and common logic into database applications. Putting this kind of logic to applications is much more easier in Access but that belongs to Windows - sadly.

Re:Still waiting for a programmable GUI (1)

houseofzeus (836938) | about 9 years ago | (#13657734)

I could respond to this in full but it would be a bit like shooting fish in a barrel with an M16 after draining all the water out. I can only hope that by bringing MS-Access into a discussion about (relatively) serious database management systems you were looking for +5 funny.

Re:Still waiting for a programmable GUI (0)

Anonymous Coward | about 9 years ago | (#13657739)

OpenOffice 1.9 Beta's OOoBase program does the job quite well. It was a little shakey during earlier betas but now seems to be quite stable and can connect to a wide range of databases including MySQL.

I never used Access so I can't really compare the two, but OOBase seems like a decent program for general database access.

Re:Still waiting for a programmable GUI (1)

wheelbarrow (811145) | about 9 years ago | (#13657759)

You are still waiting? Why aren't you acting? Write a programmable gui yourself. If is such a great idea then you should be able to make a great case for other programmers to make a free and voluntary choice to help you.

Re:Still waiting for a programmable GUI (2, Insightful)

TheRaven64 (641858) | about 9 years ago | (#13657767)

Write a specification document. Seriously. I haven't used Access since I was at school, and I honestly have no idea what it does that is any use. I suspect a lot of the people who are capable and willing to program an Access-replacement are in a similar position. Tell the community what you need. Just saying `nothing exists that fits my undisclosed requirements' does not help anyone. Please send me the URL once you have put the requirements online.

Business logic does not belong in Access (2)

Rufosx (693184) | about 9 years ago | (#13657903)

Access is an interesting app but has no business use whatsoever. I have been involved in multiple projects to rip apart poorly written applications in Access to move the data and the logic to where it belongs : a real multi-user relational database.

Writing a business application in Access is like writing it in Excel. The logic is poorly located and hard to share, the app is single-user, and the interface is crap.

What you want is a framework for quickly building apps on top of a real database. And thats another debate.

Re:Business logic does not belong in Access (1)

EastCoastSurfer (310758) | about 9 years ago | (#13657985)

I agree that Access isn't an enterprise RDBMS.

Access is an interesting app but has no business use whatsoever.

This part I have issue with. Access and Excel both are great prototyping applications. Business users can click around enough to start to get an idea of the exact problem.

I have been involved in multiple projects to rip apart poorly written applications in Access to move the data and the logic to where it belongs

Exactly. Some business person had a rough idea of something they needed and prototyped it out. If they hadn't used Access up front they probably still wouldn't have an idea of the exact problem they needed to solve (and wasted your time re-implementing an application over and over). To say every application needs to go straight to an RDBMS is naive. Unless you're extremely lucky and always working with perfect, unchanging requirements, Access and Excel are great tools to help figure things out up front.

Re:Still waiting for a programmable GUI (1)

xappax (876447) | about 9 years ago | (#13657953)

One of the main concepts behind MySQL and other SQL database systems is that the data storage and retrieval is abstracted from the front end. It's certainly valid to complain about a lack of mySQL client applications (which should be addressed to the developers of SQL client apps) but I don't think it reflects on the quality of the database itself. I think it's safe to say that since the vast majority of people who deal directly with databases are programmers or technical users of one sort or another, stability and functionality is rightly emphasised over user-friendliness.

Let's get it out of the way... (-1, Flamebait)

zettabyte (165173) | about 9 years ago | (#13657716)

PostgreSQL Fanboy: MySQL Sucks!

MySQL Zealot: STFU!!!1! MySQL Rules! PostgreSQL is for weenies!!!1!1!elventy-one

There. Now that that's done, can we move on?

What about those [MySQL] gotchas? (3, Informative)

bogaboga (793279) | about 9 years ago | (#13657718)

They have done very little about these MySQL gotchas! They should have eliminated most of them first. You can still read them here: http://sql-info.de/mysql/gotchas.html [sql-info.de] .

Re:What about those [MySQL] gotchas? (2, Informative)

sql-gotcha (833644) | about 9 years ago | (#13657817)

That list addresses issues in MySQL 4.1 and earlier. Unfortunately I haven't had time to try out any of the MySQL 5.0 pre-release versions, so I'm not in a position to provided any kind of qualified commentary. However my impression is that many of the "gotchas" in the list have been addressed.

Re:What about those [MySQL] gotchas? (5, Informative)

minginqunt (225413) | about 9 years ago | (#13657914)

No true.

Those gotchas all (mostly) go away if you run MySQL 5.0 in strict mode. Compatibility mode is provided for 4.1 and back-asswards behaviour if you need it.

See: http://dev.mysql.com/doc/mysql/en/server-sql-mode. html [mysql.com]

Martin

Just won an iPod Nano Nano (2, Funny)

patrikG (801192) | about 9 years ago | (#13657783)

From http://dev.mysql.com/mysql_5_contest.html [mysql.com]
Weekly Prize (8 winners; 1 per week) This is your opportunity to win: * An Apple iPod nano To be eligible to win the Weekly Prize, you must: * File reproducible bugs at http://bugs.mysql.com/ [mysql.com]
Reproduc a ble. That's a reproducable bug. iPod Nano with scratchable screen: here I come.

And despite the fact that I feel postgres... (4, Interesting)

MrBandersnatch (544818) | about 9 years ago | (#13657828)

is often the better database solution, I'll still be using MySQL. Why? Well a quick search on cwjobs shows 188 jobs requiring MySQL experience vs 7 for postgres!! Its a real shame but having used the best tool (C++ Builder) for my last job and then being unemployed for @2 years because people wanted either VC++ or Unix based C++ experience; I *WONT* be making the same mistake again!

Anyways, that said, Ive already played about with 5.011 and apart from the yukky syntax one has to use to support transactions it seems quite stable. Its might have taken a long time for them to finally make it a "real" database product but it seems good enough for small databases.

One of my next jobs is to test it with 10 million + records and see how it performs though so my assessment may be premature...

dont get too excited (0, Troll)

minus_273 (174041) | about 9 years ago | (#13657830)

support for inserts will be added in version 7.0

MS SQL Server (-1, Troll)

Anonymous Coward | about 9 years ago | (#13657888)

pwns MySql

Not to flame (1)

gregarican (694358) | about 9 years ago | (#13657968)

I know that there have been more than a few bashing threads, so I won't add any fuel to them. Props to the mySQL team for adding significant functionality to their software. Triggers and stored procedures are components that are important in making mySQL a production worthy enterprise level product. The big name companies who have been using mySQL likely were using it for basic heavy select statement stuff where inserting or updating recordsets wasn't part of the equation.

If most of the documented gotchas are addressed in the 5.0 RC then all the more I applaud their efforts. Once serious referential/data integrity is fully delivered I will plan to seriously consider mySQL for my next project. Until then it's PostgreSQL for FOSS and MSSQL Server for other stuff...

I had all these on my wishlist... (1)

TarrySingh (916400) | about 9 years ago | (#13657987)

Database clustering and load balancing(Like the Oracle RAC), is it already available?. Although I'm glad to see the Stored Proc's, Triggers have been included. But good for the dev team :-)
Load More Comments
Slashdot Login

Need an Account?

Forgot your password?