Using delayed JOIN to optimize count(*) and LIMIT queries

In many Search/Browse applications you would see main (fact) table which contains search fields and dimension tables which contain more information about facts and which need to be joined to get query result.
If you’re executing count(*) queries for such result sets MySQL will perform the join even if you use LEFT JOIN so […]

Read more

MySQL Master-Master replication manager released

The MySQL Master-Master replication (often in active-passive mode) is popular pattern used by many companies using MySQL for scale out. Most of the companies would have some internal scripts to handle things as automatic fallback and slave cloning but no Open Source solution was made available.
Few months ago we were asked to […]

Read more

Integers in PHP, running with scissors, and portability

Until recently I thought that currently popular scripting languages, which mostly evolved over last 10 years or something, must allow for easier portability across different platforms compared to ye good olde C/C++.
After all, their development started a few decades after C, so its notorious caveats are all well-known and should be easy to avoid […]

Read more

Only Design What You Can Implement

Working with various projects using MySQL I observe a lot of problems are coming from very simple fact – product is designed containing features which developers do not know how to implement effectively.
In many companies you would see “waterfall” like approach for web application development at least on business-development boundary. […]

Read more

MySQL Releases first real Community Release

Few days ago MySQL released MySQL 5.0.37 which I would call first real Community Version, because unlike previous versions which were released from the same source tree as Enterprise MySQL this one has some community features added, which is great.
Also over last half a year MySQL seems to have organized resources for […]

Read more