DB2 is a true database with all the minimum components, such as referential integrity, stored procedures, ACID, etc. and some interesting extras like native XML. MySQL is starting to accept some of these minimum requirements for one of its storage engines, however it still remains immature. MySQL may be better than DB2 for some specific cases where transactions are not very important, such as a small website with simple content.
DB2 is NOT open source, and for express-c you can download the latest (latest) version of DB2. This means that you cannot apply corrections or correct errors. However, when there is a new version in the DB2 family, express-c is also a release, so you always have access to the latest updates (not like in Oracle, the express version is still 10G)
The limitation in the DB2 express-c version is the size of the memory used (for buffer pools and other items), and the size is 4 GB. It can use only 2 cores if the machine has several. For storage or the number of users there are no restrictions. http://www.ibm.com/developerworks/wikis/display/DB2/DB2+Express-C+FAQ
As your business grows, you can easily upgrade to a different version in the DB2 family because your platform (s) is already designed to work with DB2. DB2 is good for a very small database and for a very large multi-TB database.
MySQL is Open Source, and it was bought by Sun, which was acquired by Oracle. A few days ago, several Open Sources projects supported by Oracle were completed and they will only work with paid versions; such as OpenSolaris and OpenOffice. We do not know the future of MySQL with Oracle as the owner. On the other hand, it was difficult for IBM to work with Open Source (Eclipse, Apache Derby), and in recent years, there has been a continuous effort to use DB2 Express-C, so it seems that IBM will continue this way.
"DB2 is DB2 is DB2"
source share