IBM Sets DB2 Database Free (Beer)
Anonymous Coward writes to tell us that in the hopes of winning more developer interest, IBM has released a free version of their DB2 database. From the article: "DB Express-C is the same database as IBM's commercial offerings but the company places limits on what kind of hardware it can run on. It can be deployed on systems with two processor cores or up to two dual-core chips on Advanced Micro Devices- or Intel-based servers. The memory limit is 4GB but there are no limits on the size of database or number of users. "
Alright, I run a MYSQL database at home for my little crappy web server which no one visits because pictures of me visiting Mexico isn't exactly worth typing a number into your browser. All those details aside, why should I switch to either Microsoft's SQL Server 2005, Oracle 10g or DB2?
You shouldn't. In fact, it's mildly surprising you're even bothering with a database.
You should download the big databases if you fit in any of the following categories:
1) You need to develop against or evalute the database.
2) You need to learn the database to increase your marketable skills.
3) You happen to run a high-traffic site and you need features not found in PostgreSQL.
4) You run a site that you expect to grow in traffic and want the option of upgrading to a more powerful version of the software at a later date.
I'm sure that others can find one or two more cases under which these DBs would be useful.
Javascript + Nintendo DSi = DSiCade
The thing is, most developers use the dev tool/database they 'play with'.
So all companies are releasing a "playful developer edition" of their tools, so that developers learn their stuff, play with it,and when they do a serious project, they will ask their boss to buy tool X because it's what they know.
To directly answer your question: you don't have a reason to replace MySql on your site where you post mexico photos. But IBM wants other people to use DB/2 on their personal sites/apps so that they get the habit of using it elsewhere.
A quick search of IBM's site reveals the links to download DB Express-C. (Registration is required.)
Since no one
I want to drag this out as long as possible. Bring me my protractor.
Two words: Software validation. Database licenses are very, very expensive. You have an app that you've already developed against, say, Oracle or DB2, and you want to to run some test scenarios from a functionality standpoint. You could spend thousands on the software, or you could just keep your testing scenarios within the limits of the free beer version and not have to worry about software licenses. Later, you will probably need to prove out your software from a scalability perspetive and you'll need the real software then, but you don't need to be paying for the license during your year-long release cycle.
My blog
Ummm...I guess you don't keep up on tech news much.
IBM no longer produces the Thinkpad, Lenovo does.
No reason to lie.
How does this differ from the "Free" version they used to give away?
The "Free" version that they used to give away was for development use. You couldn't use that version on your production system. At least thats how I remember it. I was playing around with it and decided not to install it because of that limitation.
With this new version, it can be used on small production enviroments also. This makes it a lot appealing because of the starting costs of development and moving to production.
DB2 is arguably the most scalable RDBMS out there. It was some time ago but when I worked for Tivoli we kicked out some benchmarks and the story was basically that SQL Server (basically Sybase 10 back then) was fastest but least scalable, oracle was slower but much more scalable, and DB2 was slowest but by far most scalable, basically never slowing down any measurable amount no matter how much data you stuffed into it.
Whether this is the current state of affairs, I can't say.
Personally I'm a postgres fan but I'm using mysql for fiddling around with drupal because the mysql support is exceptionally poor. Most all the modules have schema information only for mysql, and sure you can translate it over, but some things won't work quite reliably in all cases. So the answer, as usual, is that you should run the platform supported by your applications.
"You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
proprietary extensions
select * from mytable limit 4,10
- - - - - - - - - - -
I am a programmer. I am paid to produce syntax not grammar. Deal with it.
No, but the free MS SQL has been doing it (with more features) for years.
*Braces for attack*
Big ones, small ones, some as big as yer 'ead!
Give 'em a twist, a flick o' the wrist...
I've been using DB2 for several years and I have to say that one of their strengths has to be the active and helpful user community that posts to comp.databases.ibm-db2.
Compare the quality of information provided ther to any other database group or forum and I think you'll be impressed.
I mostly agree with the parent's comment except for:
First of all, the commercial database offerings are far more feature rich than MySQL, though MySQL is getting better all the time. MySQL is fabulous for the hobbyist and small business crowd, but won't be found as a core technology of a major investment bank or backing an SAP installation at a large manufacturer anytime soon.
And i dont agree because MySQL IS found in major operations of major businesses all over the world.
Okay, so perhaps not on evey single critical task for which other (both free and otherwise) databases excel better, but for simple relational, transactional applications, its a pretty damned good database. And its free and simple and has a huge community arround it.
Yeah, so we have no 'native' XML support on it, but is that really critical for every application? NO! Normal and critical client/server apps have been working well for ages on stupidly bad db engines (fox, access), whats wrong with mysql then?
NO SIG
DB2 Express-C for Linux and Windows
My guess is that there's a bug in the timelock. I don't recall seeing the trial version available for a while, so my guess is that it got pulled, but I couldn't swear to that.
;-)) The PDE is absolutely free for development use, and contains all the major functionality. IIRC, it has similar hardware limitations, but that's not something you really notice during development.
Nope, I'm talking about the Personal Development Edition. (I looked it up.
Javascript + Nintendo DSi = DSiCade
DB2's XML functionality looks awesome, I'm definitely going to try this out.
.NET-compiled stored procedures and other Windows-centric friendliness. Oracle and IBM have to come up with great linux tools to compete against what Microsoft has created in MSSQL 2005 (Oracle's Raptor is a start)
I am interested in all of these free editions for my web projects because it seems like it offers simpler scalability than MySQL down the road. Most high-end web developers--which I certainly am not--often end up having to find ways to get off of MySql as the site grows. Am I the only one who likes the idea of these scalable databases that I can buy later on?
On the other hand, if you're on Windows, it seems like MSSQL 2005 is your clear choice. It surprises me that any of these companies are bothering to compete against Microsoft there. It's beautifully integrated into the Visual Studio IDE, as well as offers
MySQL has a fully transactional engine that does the log thing, the rollback thing and the rollforward thing. This engine is ACID compliant from any way you wanna look at it.
The trick is the table format you choose. Refer to the mysql docs for that.
NO SIG
May not be as light as MySQL, nor the darling of the open source community.
But don't kid yourself into thinking DB2 is nothing less that what it is. a ROCK SOLID, HIGHLY SCALABLE, MATURE database.
how useful all the additional features might be to the average PHP developer is certainly questionalble, but for the serious developer looking to do serious work, this is an excellent addition to the available toolkit.
this is good news indeed, thank you IBM.
Here are the major differences between commercial databases I've used, all offer a free "express" edition:
Sybase Cheaper version of Oracle, much of the same underlying code, optimised for speed although maybe not quite as fast as Oracle. Missing some features like GIS datatypes. Annoying limitations like a 30 character name limit and no full outer joins (only the union trick). Recently integrated with the java virtual machine to do java stored procedures, good for java development. Popular with financial transaction companies, probably due to stable codebase (not a lot changes). MS SQL Microsoft buys Sybase codebase, which is decent, and build into it a lot of developer studio tools and integration, no Java. Oracle Much the same as Sybase, grew out of the same early-era databases, with more features/options (like GIS datatypes) and arguably, it's faster too. Also the most expensive. Popular with Java applications, java integration just like Sybase. Same annoying limitations like 30 character limit on names and no full outer joins. DB2 Move forward with new features unlike Oracle and Sybase, noticably different feel than the classic databases. Java integration also. None of the annoying limitations mentioned earlier. MySQL Lots of advanced features added in newer versions, such as GIS datatypes (by programmers for programmers, as they say). Fast, low memory footprint, free. Widespread support. Biggest setbacks are the lousy query optimizer and other fundamental aspects of the core which may come back to bite you, although I hear it has a well organized design that aids in development of new features. PGSQL Great database, been around long time, used to be slow but now is faster with more popularity due to mysql success. Free and all that. Biggest limitation in my limited experience is the lack of any replication features built in.I know I may have missed some major issues that I'm not aware of, so feel free to add to this.
Most people who just need to get to work in the morning don't need to buy an 18 wheel semitruck and trailer. Heck, most don't even need an SUV. So if freightliner (who makes the big trucks) started giving them away most people wouldn't even want one Same here. DB2 is not something your avaerage home computer user would want. It is something of an 18-wheeler of a DBMS. Something only someone with a really big job would need. It's not surprizing that for most uses mysql works. There are far more users with small and simple neds then large 1000+ emplyee enterprizes. What you gain by using the likes of DB2, Oracle and maybe even POstgresql is "scalablility". The ability to handle larger demands by adding hardware. Notice that IBM be limiting use of the free version to machines with "only four CPU cores and 4GB RAM figures that the free version wil not compete witht ehothr version. So the "real users" of DB2 are using much more powerful servrers.
There is replication (master to multiple slave) for POstgresql, see slony1 , or google for commercial replication and clustering solutions for postgresql
You need GLIBC 2.2 to use it. If you are using GLIBC 2.3 (as I am), then you're out of luck.
/bin/sh is needed by IBM_db2cliv81-8.1.2-97 /tmp/db2_install_log.15124.
DB2.EXP
IBM_db2cliv81...
error: Failed dependencies:
libc.so.6(GLIBC_2.2) is needed by IBM_db2cliv81-8.1.2-97
The installation logfile can be found in
db2_install program terminated prematurely.
Nothing is so smiple that it can't be screwed up.
Oracle uses optimistic MVCC -- deprecated rows are overwritten sooner but the redo logs get huge with rollback transactions. PGSQL uses pesismistic MVCC -- tables get more deprecated rows and require periodic maintenance (VACUUM) but the redo logs (WAL) won't go nuts.
Oracle's method requires less maintenance to keep performance up but can suck when cancelling big update jobs. If a big update job is running, don't ever think "god I'd better cancel this and run it later". Because the original data is already gone (assuming no other transaction had a read lock on it), all the updated data not only has to be deleted but then the redo logs replayed to get back to the original state.