MySQL
Z Wikipedii
| MySQL | |
| relacyjny system baz danych | |
| Producent | MySQL AB |
| Platforma systemowa | Linux, Windows, Solaris, FreeBSD, MacOS X, HP-UX, AIX, QNX, Novell Netware, SGI, DEC OSF. |
| Pierwsze wydanie | 23 maja 1995 |
| Aktualna wersja stabilna | 5.1.35 (Community Server) - 4 czerwca 2009; 42 dni temu |
| Aktualna wersja testowa | 5.4.0 - 21 kwietnia 2009; 86 dni temu |
| Licencja | GPL lub komercyjna |
| www.mysql.com | |
MySQL (wym. maj es-kiu-el) - wolnodostępny system zarządzania relacyjnymi bazami danych.
MySQL tworzony jest przez szwedzką firmę MySQL AB, kupioną 16 stycznia 2008 roku przez Sun Microsystems [1].
Spis treści |
[edytuj] Wady i zalety MySQL
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 silnika bazodanowego. MySQL obsługuje większą część obecnego standardu ANSI/ISO SQL (tj. SQL:2003). Wprowadza również swoje rozszerzenia i nowe elementy języka [2].
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 cieszy się natomiast opinią jednego z szybszych serwerów bazodanowych[potrzebne źródło], dzięki czemu nadaje się jako serwer dla często odwiedzanych witryn WWW.
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.
[edytuj] Platformy, dla których dostępny jest MySQL
Serwer MySQL dostępny jest dla wszystkich popularnych platform systemowych i różnorakich architektur procesorów. Jest dostępny także w wersji źródłowej, co umożliwia skompilowanie go dla dowolnej innej platformy.
Oficjalnie oferowane są wersje binarne dla następujących platform i architektur (MySQL 4.1):
- Linux (x86, S/390, IA64 (Itanium), Alpha, PowerPC, AMD64 / EM64T),
- Windows (x86, x64),
- Solaris (SPARC, x86),
- FreeBSD (x86),
- MacOS X,
- HP-UX (PA-RISC IA64),
- AIX (RS6000),
- i5/OS (IBM System I),
- QNX (x86),
- Novell NetWare (x86),
- SGI,
- DEC OSF.
Według informacji z dokumentacji serwera, MySQL można skompilować również dla platform: Amiga, BSDI, Digital Unix, NetBSD, OpenBSD, OS/2 Warp, SCO OpenServer, SCO UnixWare, SunOS, Tru64 Unix.
Podobnie jak serwer również biblioteki klienckie MySQL, umożliwiające korzystanie z tego serwera bazodanowego z poziomu aplikacji, dostępne są dla wielu platform i języków programowania – m.in. dla C, C++, Delphi, czy PHP.
[edytuj] Rodzaje obsługiwanych silników bazodanowych
MySQL oferuje różne typy silników bazodanowych, z których każdy typ przeznaczony jest do innego zastosowania. Są to między innymi:
- MyISAM – domyślny silnik, nie obsługuje transakcji ani nawet kluczy obcych, umożliwia natomiast (w odróżnieniu od pozostałych typów) wyszukiwanie pełnotekstowe.
- MEMORY (do wersji 4.1 – HEAP) – najszybszy, gdyż wszystko jest przechowywane wyłącznie w pamięci RAM. Ma jednak kilka ograniczeń, między innymi nie przechowuje danych po wyłączeniu serwera MySQL.
- InnoDB – obsługuje transakcje.
- BerkeleyDB – obsługuje transakcje, jak dotychczas nie w pełni zintegrowany z MySQL.
- MERGE – umożliwia łączenie tabel MyISAM.
- FEDERATED – umożliwia tworzenie rozproszonych baz danych.
- CSV – przechowuje dane w standardowych plikach CSV.
- ARCHIVE – (od wersji 4.1) przechowuje dane w spakowanych archiwach. Ten rodzaj silnika umożliwia wyłącznie dodawanie i pobieranie rekordów.
Ponadto MySQL umożliwia (od wersji 5) korzystanie z tzw. dołączanych silników bazodanowych, tj. silników dostarczanych przez niezależnych producentów, które mogą oferować rozszerzoną w stosunku do domyślnych funkcjonalność lub wydajność.[3]
[edytuj] Licencjonowanie
MySQL jest dostępny na licencji GPL, jednakże można nabyć również wersje licencjonowane komercyjnie. Biblioteki klienckie są również dostępne na licencji GPL lub komercyjnej. Istnieje wymóg nabycia licencji komercyjnej jeśli zamierzamy dystrybuować aplikację komercyjną (niezgodną z licencją GPL), wraz z zintegrowaną bazą MySQL.
Zmiana licencji nastąpiła od wersji 4.1 (i późniejszych) i była jednym z powodów rezygnacji w PHP z domyślnie włączonej obsługi MySQL na rzecz SQLite (oczywiście obsługę MySQL można samemu w PHP włączyć).
[edytuj] Zastosowanie
Wraz z serwerem Apache i parserem PHP zaimplementowanymi na platformie Linux stanowi popularne środowisko serwerowe – LAMP.
[edytuj] Narzędzia administracyjne
[edytuj] Zobacz też
[edytuj] Linki zewnętrzne
- Witryna projektu (en • de • fr • it • jp)
- Zbiór blogów ludzi rozwijających MySQL (en • de • es)
- MySQL Reference Manual (instrukcja obsługi) (en)
- Kurs MySQL dla PHP – podstawy

