You are here

MySQL Performance Blog

MySQL Performance Blog
Checked: 6 min 5 sec ago
Updated: 6 min 5 sec ago
Update every: 2 hours

Subscribe to MySQL Performance Blog

Data Recovery Toolkit for InnoDB Version 0.1 Released

MySQL Performance Blog - Mon, 26/11/2007 - 8:29pm

As Peter mentioned in one of previous posts, we’ve done huge work developing robust strategies of InnoDB data recovery to provide our customers effective data recovery services and one of major parts of these strategies is our toolkit for InnoDB data recovery.

Slides from Zurich talk are now posted

MySQL Performance Blog - Sun, 25/11/2007 - 6:56pm

I have now posted slides for the talk I gave in Zurich last week in MySQL Performance Presentations section.

That was fun talk and fun trip in general. Thank you for inviting.

Pitfall of proxying HTTP requests through Lighttpd

MySQL Performance Blog - Fri, 23/11/2007 - 12:04am

Recently I had a case with a web server farm where a random node went down every few minutes. I don't mean any of them rebooted except once or twice, but rather they were slowing down so much that practically stopped serving any requests and were being pulled out from the LVS cluster. The traffic was not any different than usual, all other elements of the system worked perfectly fine (e.g. databases, storage), no one started any backup in the middle of the day as it happens sometimes... so what was happening?

Giving a talk in Zurich

MySQL Performance Blog - Sun, 18/11/2007 - 10:25pm

I’m visiting customer in Zurich next week and also was invited to give a talk on MySQL Performance Wednesday November 21.
If you’re in the area please feel free to drop by I’ll start by talking about Query Optimization and we’ll keep it interactive to see what else audience would like to know.

Entry posted by peter | No comment

MySQL: Data Storage or Data Processing

MySQL Performance Blog - Sun, 18/11/2007 - 5:02pm

I was thinking today of how people tend to use MySQL in modern applications and it stroke me in many cases MySQL is not used to process the data, at least not on the large scale - instead it is used for data storage and light duty data retrieval. Even in this case however the cache (ie memcache) is often implemented to offload MySQL.

10+ Ways to Crash or Overload MySQL

MySQL Performance Blog - Tue, 13/11/2007 - 3:04pm

People are sometimes contacting me and asking about bugs like this which provide a trivial way to crash MySQL to the user with basic privileges and asking me what to do.

My answer to them is - there is nothing new to it and they just sit should back and relax :)

Innodb Undelete and Sphinx Support

MySQL Performance Blog - Mon, 12/11/2007 - 9:54pm

At Percona we are pleased to announce couple of services which should be helpful to MySQL Community and which are not offered by MySQL, Oracle and other companies I know about.

How we work on High Performance MySQL Second Edition

MySQL Performance Blog - Mon, 12/11/2007 - 1:18pm

Baron have been updating you a lot about chapter by chapter progress so I should not repeat it, instead I thought it would be a good idea to write a bit about how we work on the book.

Generally, quite similar to the previous book this is long process, which is probably what happens when busy people attempt to get time to write a book. I started working on book Outline with Andy Oram (our great editor) about a year ago.

Filtered MySQL Replication

MySQL Performance Blog - Wed, 07/11/2007 - 12:40pm

To get this straight - I’m not a big fan of filtered or partial MySQL Replication (as of version MySQL 5.0) - there is enough gotchas with replication itself and getting things right with filtering can get quite bumpy road. In some applications however it is very helpful so lets see what one should do or should not do to make it work.

Experience shared here mainly applies to logical level replication. MySQL 5.1 can use row level replication which elevates some of these issues but I guess it will still take some time before it becomes massively used.

Heikki Tuuri answers to Innodb questions, Part II

MySQL Performance Blog - Sun, 04/11/2007 - 6:29pm

I now got answers to the second portions of the questions you asked Heikki. If you have not seen the first part it can be found here.

Same as during last time I will provide my comments for some of the answers under PZ and will use HT for original Heikkis answer.

Choosing innodb_buffer_pool_size

MySQL Performance Blog - Sat, 03/11/2007 - 11:41pm

My last post about Innodb Performance Optimization got a lot of comments choosing proper innodb_buffer_pool_size and indeed I oversimplified things a bit too much, so let me write a bit better description.

Nginx Powers ?

MySQL Performance Blog - Thu, 01/11/2007 - 7:05pm

Look at this post recently published on TechCrunch - It is ugly standard 404 error message, but what is interesting is the server line which shows nginx 0.5.32

I have checked and indeed images served from have nginx server in response header.

Innodb Performance Optimization Basics

MySQL Performance Blog - Thu, 01/11/2007 - 4:17pm

Interviewing people for our Job Openings I like to ask them a basic question - if you have a server with 16GB of RAM which will be dedicated for MySQL with large Innodb database using typical Web workload what settings you would adjust and interestingly enough most people fail to come up with anything reasonable. So I decided to publish the answer I would like to hear extending it with basics of Hardware OS And Application optimization.

The new cool MySQL patch has landed! Check your queries performance!

MySQL Performance Blog - Thu, 01/11/2007 - 12:40am

Microslow patch is used by many DBAs and developers to accurately time their queries and to catch those which run less than a second as they can also be a performance killer for a busy application.

Recently I have started the development of an updated version of the patch. The basic idea is the same as for its predecessor - to get more information about query execution logged into slow log, however the new version is loaded with a set of cool new features.


Yet another presentation submission

MySQL Performance Blog - Tue, 30/10/2007 - 11:03pm

Looking at the Feedback I got for other Presentations Proposals I thought I indeed should submit general presentation focusing on Web Application performance tuning and explaining how you analyze performance and why do you do it this way, so here it is:

Hacking to make ALTER TABLE online for certain changes

MySQL Performance Blog - Mon, 29/10/2007 - 12:49pm

Suppose you want to remove auto_increment from 100G table. No matter if it's InnoDB or MyISAM, you'd usually ALTER TABLE `huge_table` CHANGE `id` `id` int(6) NOT NULL and then wait hours for table rebuild to complete. If you're unlucky i.e. you have a lot of indexes and not too much RAM - you could end up waiting days. If you want to make this happen quick - there's another way. Not documented, but works well with both - InnoDB and MyISAM.

Heikki Tuuri Innodb answers - Part I

MySQL Performance Blog - Fri, 26/10/2007 - 11:05pm

Its almost a month since I promised Heikki Tuuri to answer Innodb Questions. Heikki is a busy man so I got answers to only some of the questions but as people still poking me about this I decided to publish the answers I have so far. Plus we may get some interesting follow up questions out of this.

I had added my comments to some of the questions. HT will stand for Heikki Tuuri in the answers and PZ for myself.

MySQL Support or Support for MySQL ? MySQL Trademark Policies

MySQL Performance Blog - Fri, 26/10/2007 - 8:39pm

What is the difference between “MySQL Support” and “Support for MySQL” ?
In my mind there is not much difference in meaning just first one is shorter and I would use it also because how people would search stuff in Google.

MySQL Performance Blog gets new server.

MySQL Performance Blog - Fri, 26/10/2007 - 8:15pm

Try number two. We have moved to the new server yet again, now it is server hosted by ServerBeach as recommended by Kevin Burton and few other guys.

Lets hope this will run stable and we’ll not need to move it back in emergency in less than a week as we had to last time.

Up to this point it all was running pretty well, with only minor issues. We got CentOS 5 on the box as we wanted, however we could not request custom partitioning - I really prefer to keep all important data on LVM volume so it is easy to backup.

MySQL Users Conference Presentation Proposals

MySQL Performance Blog - Wed, 24/10/2007 - 5:33pm

OK, I am not getting too much people feedback on what would they like to hear about on MySQL Users Conference, so I went ahead and submitted few presentation ideas.

I do not expect all of them would be accepted, furthermore it would be hard to prepare so many good presentations if they are so please let me know if anything of this is of special interest for you. When I would be able to show that to organizers to help with decision.

Progress with ClickAider project

MySQL Performance Blog - Wed, 24/10/2007 - 3:08pm

About three months ago I announced ClickAider to become available to general public. And I think it is about the time to write about the progress we have with this project for those who interested.

Making bugs public - good job MySQL

MySQL Performance Blog - Mon, 22/10/2007 - 11:11pm

If you have been MySQL User for many years you might remember the times when MySQL had “zero bugs policy”, this is when all known bugs really were fixed before release was made. To be honest at that time bugs were reported via bugs mailing list not via bugs database as they are now so they were not tracked so accurately but still there was intention and all known serious bugs were fixed before release was made.

What would you like to hear about on MySQL Users Conference 2008 ?

MySQL Performance Blog - Mon, 22/10/2007 - 4:25pm

It is submission time now, with about one week left till proposal submission deadline. Both me and Vadim had submitted few talks to the Grand Jury which will make elite selection of sessions for MySQL Users Conference and we plan to submit few more.

Traffic Tricks by Hosting Providers.

MySQL Performance Blog - Wed, 17/10/2007 - 9:20pm

I already wrote once about hosting troubles which we had with this site a while back. Today we had another trouble to one of the European hit servers for ClickAider project.

MySQL Performance - eliminating ORDER BY function

MySQL Performance Blog - Wed, 17/10/2007 - 12:24pm

One of the first rules you would learn about MySQL Performance Optimization is to avoid using functions when comparing constants or order by. Ie use indexed_col=N is good. function(indexed_col)=N is bad because MySQL Typically will be unable to use index on the column even if function is very simple such as arithmetic operation. Same can apply to order by, if you would like that to use the index for sorting. There are however some interesting exception.


Subscribe to MySQL Performance Blog