September 2, 2014

Test Drive of Solid

Not so long ago Solid released solidDB for MySQL Beta 3 so I decided now is time to take a bit closer look on new transactional engine for MySQL. While my far goal is the performance and scalability testing before I wanted to look at basic transactional properties such as deadlock detection, select for update […]

EuroOSCON 2006 – High Performance FullText Search

I’m now back from EuroOSCON 2006 which was the reason I was not posting for a while. Pretty interesting event, even though it looks like it is getting less geeky compared to OSCON in US I visited two years ago – a lot of presentations now shifted to philosophical, political and business issues. I however […]

Database access Optimization in Web Applications.

This is pretty simple approach I often use called to optimize web application performance if problem happens with few pages. If we have “everything is slow” problem looking at slow query logs may be better start. So what could you do ? Look at the information shown on the page which comes from database. This […]

Alternatives of PHP ?

When I loaded GigaBytes of XMLs into mysql database with PHP script, I was thinking about PHP alternatives. Why do I need that ? 1. PHP is slow – I’m speaking about area of data processing and implementation of algorithms 2. No good cli debugger – I’m just tired of debugging with ‘echo’ and ‘var_dump’ […]

Why Index could refuse to work ?

Have you ever seen index which refused to be used even if there is every reason for it to work (from the glance view):

Why on the earth index would not be used you would think, even if MySQL is mentioning it in “possible keys” ? Should you try to force it ?

Internals of InnoDB mutexes

InnoDB uses its own mutexes and read-write locks instead of POSIX-mutexes pthread_mutex*, the main reason for that is performance, but InnoDB’s implementation isn’t ideal and on modern SMP boxes can cause serious performance problems. Let’s look on InnoDB mutex (schematic for simplification):

Wrong GROUP BY makes your queries fragile

This is probably well known issue for everyone having some MySQL experience or experience with any other SQL database. Still I see this problem in many production applications so it is worth to mention it, especially as it is connected to MySQL Performance. No it might not affect MySQL Performance per say but it limits […]

Slow Query Log analyzes tools

(There is an updated version of this post here). MySQL has simple but quite handy feature – slow query log, which allows you to log all queries which took over define number of seconds to execute. There is also an option to enable logging queries which do not use indexes even if they take less […]

Joining Peter for MySQL Consulting

Starting September I’m leaving MySQL to partner with Peter on practice as well as work with him on some Web projects. I really enjoyed working under Peter’s guidance while working for MySQL and it is great we now can work together as a partners. I thanks MySQL for two great years I had. I also […]

Even minor upgrades are not always safe

I already wrote couple of weeks ago I keep most of my systems on MySQL 4.1 still as they will not benefit from MySQL 5.0 features anyway while I do not want to likely loose a bit of performance and possibly deal with new bugs and changes introduced in MySQL 5.0 (You never know where […]