tags:

views:

58

answers:

2

I've started a new job where I'm working with MySQL instead of Oracle. What are some things that I might have to "unlearn" from using Oracle? What are some things that might make Oracle SQL go faster, but might be bad under MySQL (and vice-versa)?

In particular, is it better for MySQL code to commit less frequently (as is the case for Oracle)?

+2  A: 

Storage Engines are the key. MyISAM and InnoDB will perform very differently, for example (not least because MyISAM is non-transactional and can therefore skip a lot of consistency logic).

So what is faster will often depend on the storage engine being used.

Gary
+1  A: 

As you've started a new job, the application you're maintaining likely has a different architecture. In optimisation, architecture is much more important than micro-optimisations, so that is likely to make more difference.

Sure of course, the techniques for optimisation will be different, but that would be the case with any product.

However, MySQL (InnoDB) and Oracle operate in a fundamentally similar way - small transactions are generally going to perform less well than the same number of operations in large transactions if you have durability enabled, as each transaction requires a fdatasync (possibly slightly less if group commit is enabled and works).

MarkR