Język MySQL

advertisement
Język MySQL
Prezętacja pokazująca możliwości i sam język
MySQL
Język MySQL
MySQL (maɪɛskjuːˈɛl) – wolnodostępny system
zarządzania relacyjnymi bazami danych. Wraz z
serwerem Apache i parserem PHP zaimplementowanymi
na platformie Linux stanowi popularne środowisko
serwerowe – LAMP.
Język MySQL
MySQL rozwijany jest przez firmę Oracle. Wcześniej
przez większość czasu jego tworzeniem zajmowała się
szwedzka firma MySQL AB.
Język MySQL
MySQL AB została kupiona 16 stycznia 2008 roku przez
Sun Microsystems, a ten 27 stycznia 2010 roku przez
Oracle.
Język MySQL
W międzyczasie Monty Widenius (współtwórca MySQL)
stworzył MariaDB - forka (alternatywną wersję)
opartego na licencji GPL. MariaDB jest oparta na tym
samym kodzie bazowym co MySQL i dąży do
utrzymania kompatybilności z jej poprzednimi
wersjami.
Cechy 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
projektu.
Cechy MySQL
MySQL obsługuje większą część obecnego standardu
ANSI/ISO SQL (tj. SQL:2003). Wprowadza również
swoje rozszerzenia i nowe elementy języka.
Cechy MySQL
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
Widoki i 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.
Cechy MySQL
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.
Cechy MySQL
W najnowszej wersji rozwojowej 5.6 wprowadzono kilka
istotnych zmian poprawiających skalowalność i
niezawodność środowiska, oraz wprowadzających
nowatorskie rozwiązania, np.:
semi-synchroniczna replikacja
replikacja wielowątkowa
rozbudowane możliwości monitorowania przez tzw.
PERFORMANCE_SCHEMA
interfejs API typu NoSQL z wykorzystaniem memcached
Dostęp do bazy
danych MySQL
Serwer bazy danych MySQL jako domyślne ustawienia
przyjmuje, że będzie pracował jedynie lokalnie - to
znaczy że dostęp z zewnątrz będzie niedostępny.
Założenie słuszne i większość firm hostingowych (w tym
również panic.pl) nie zezwala na dostęp do bazy z
zewnątrz. MySQL jest jednym z najpopularniejszych
serwerów baz danych. Do komunikacji z innymi
programami używa standardowego języku zapytań
(SQL) wraz z własnymi rozszerzonymi jego funkcjami.
Udostępnianie
MySQL
MySQL to popularna, szybka i wielowątkowa baza
danych umożliwiająca udostępnianie zasobów licznym
użytkownikom. Wykorzystuje ona język SQL.
MySQL umożliwia budowanie wieloserwerowych baz
danych, którymi łatwo się zarządza i uaktualnia.
Produkt stanowi poważną konkurencję dla innych baz
danych stworzonych w oparciu o technologię SQL
firmowanych przez Microsoft i Oracle.
Twórcą bazy danych jest MySQL AB.
Zabezpieczenia
MySQL
Niewiele osób zdaje sobie sprawę, jak łatwo można
oszukać wiele skryptów i formularzy, które odwołują się
do baz danych. Źle napisane procedury do odczytu
rekordów, autoryzacji czy wybierania danych są
wystarczającym narzędziem, dzięki któremu można
wykraść dane, a także wykonać polecenia umożliwiające
w skrajnych przypadkach przejęcie kontroli nad bazą
danych lub nawet całym serwerem. Większość osób
korzysta z baz danych nieświadomie, nie wie więc, że
pewna konstrukacja zapytań może powodować bardzo
poważne szkody.
Aktualizacje
MySQL
Aby zaktualizować bazę dznych MySQL wystarczy
odpowiedni skrypt napisany w języku SQL lub program
aktualizujący. Możemy ręcznie wprowadzać zmiany.
Czynności
administracyjne
MySQL
Aby sprawnie administrować bazą danych MySQL należy
sprawdzać bazę dznych i jej aktualizacje, kto ma do niej
dostęp oraz dbać o skrypty i luki w ochronie.
Operacje MySQL
Aby sprawnie zarządzać bazą danych MySQL należy
dbać o spójność naszych skryptów, usówać na bieżąco
luki i niepotrzebne dane. W każdej chwili należy mieć
możliwość modyfikacji bazy.
Operacje MySQL
Tworzenie, modyfikowanie i usówanie rekordów, tabeli i
kwerend jest bardzo proste i sprowadza się do operacji
na rekordach oraz dodawniy nowych elemętów.
Dziękuje za
obejrzenie
Przygotował:
Bartosz Wójcik
KL 3BT
Download