Znam dobrze MySQL i MariaDB. Potrafię tworzyć zapytania, również z JOINami lewo, prawo stronnymi, podzapytania. Również optymalizacja baz danych. Umiem pisać triggery słabo procedury i funkcję.
Chciałem poznać bazę Oracle. Jaką iść drogą, jeśli aktualnie mam zawodowej szansy pracy w Oracle:
- Pobrać Oracle Database 11g Express Edition i na tej bazie próbować pracować. Pytanie tylko jak ona odbiega od aktualnej 12c?
- Wykupić jakiś tani (o ile jest) hosting z Oracle?
Czy Oracle dużo różni się od baz MySQL/MariaDB?? Pytam z punktu widzenia programisty Java.
Powinieneś rozpocząć od zapoznania się z architekturą bazy Oracle, polecam książkę: Thomas Kyte - "Expert Oracle Database Architecture". Właściwie to powinna być pozycja obowiązkowa, zanim zabierzesz się z instalację.
Między 11g i 12c jest duża różnica (g" w 11 jest od "grid", zaś "c" w 12 jest od "cloud") dotycząca funkcjonalności. Chodzi głównie o funkcjonalności z perspektywy administratora bazy danych. Dla programisty Javy i początkującego adepta Oracle w zasadzie niedostrzegalne różnice. Zarówno do MySQL/MariaDB jak i Oracle używasz interfejsu JDBC i tyle, więc dużych zmian nie powinieneś odczuć.
Polecam VirtualBoxa + instalację pod Linuxem. Pod Windows jest to też możliwe, ale napotkasz dużo więcej problemów. Oracle udostępnia również obrazy VM z pre-instalowanymi komponentami. W zamyśle ma to ułatwiać róże rzeczy, ale trzeba wiedzieć co chcesz osiągnąć i który VM Ci w tym pomoże. Na początku oczywiście nie masz tej wiedzy, więc lepiej zacząć od instalacji bazy od 0 i przejściu przez typowe problemy "jak się połączyć?".
Polecam stronę: https://oracle-base.com/
Tom Kyte + oracle-base => odpowiedzi na 99% typowych problemów z Oracle
Jak chcesz wiedzieć jak działa Oracle od podszewki i poznać jak podchodzić do rozwiązywania pozostałych 1% problemów, to warto śledzić:
- blogi (Tanel Poder, Jonathan Lewis i linki z blogrolli)
- oracle-l (lista mailingowa)