My SQL
MySQL był pisany raczej z myślą o szybkości niż kompatybilności ze standardem SQL – przez dłuższy czas MySQL nie obsługiwał nawet transakcji, co było zresztą głównym argumentem przeciwników tego projektu. MySQL obsługuje większą część obecnego standardu ANSI/ISO SQL (tj. SQL:2003). Wprowadza również swoje rozszerzenia i nowe elementy języka[3].
W wersji 5 dodano m.in.
* procedury składowane (ang. stored procedures) – obecne od wersji 5.0,
* wyzwalacze (ang. triggers) – obecne od wersji 5.0.2
* perspektywy (ang. views)
* kursory – obecne od wersji 5.1
* partycjonowanie tabel – od wersji 5.1
* harmonogram zadań – od wersji 5.1
co zbliża najnowsze wersje MySQL do PostgreSQL pod względem funkcjonalności.
MySQL zawiera wsparcie dla replikacji bazy danych (w trybie master-slave) i wielojęzyczności – każda tabela, a nawet każde pole może mieć własne ustawienie kodowania znaków.