W tym poście przedstawię jak pobrać zawartość tabeli bazodanowej do kolekcji PL/SQL.
Pokażemy kilka z dostępnych możliwości wraz z kodem opartym o użytkownika HR.
W tym poście przedstawię jak pobrać zawartość tabeli bazodanowej do kolekcji PL/SQL.
Pokażemy kilka z dostępnych możliwości wraz z kodem opartym o użytkownika HR.
Jak większość z nas wie RMAN (Recovery Manager) pozwala nam w sposób elastyczny oraz automatyzujący zadania wykonywać kopie zapasowe naszych baz. Współpracuje z katalogiem metadanych o wykonanych kopiach , obrazach plików czy też całych baz, oraz kopiach logów powtórzeń.
Katalog RMAN utrzymywany jest w ograniczonej formie w pliku kontrolnym każdej z baz, lub też może być dedykowaną instancją bazy na którą nie potrzebujemy dodatkowej licencji. Zw względu na fakt, że katalog jest niczym innym jak schematem w bazie, częstą praktyką jest “przyklejanie” katalogu RMAN do instancji już działającej bazy.
Wykorzystując RMANa oraz katalog, mamy możliwość wykonywania kopii zapasowych wielu baz. Wraz ze wzrostem ich ilości wzrasta trudność monitorowania polityka backupów.
Informacja o nieudanych backupach zawarta jest w logu z wykonania, i jest prosta do analizy (grep RMAN- *.log) , jak natomiast monitorować wydajność backupu ? W najszybszy i wygodny sposób odpowiedzieć sobie na pytanie “Czy nasza sieć (w przypadku backupu przez LAN) nie staje się wąskim gardłem ?” , “Czy nie mamy problemów z wydajnością storage’u na który wykonujemy kopie ?”… Czytaj dalej
Często pewną konsternacje budzi problem wynikający z jednoczesnego stosowania wartości NULL i operatora sprawdzenia czy elementu nie ma na liście (NOT IN) co prowadzi do uzyskania w wyniku pustego zestawu rekordów. NULL dla operatora IN działa poprawnie, a dla operatora NOT IN nie działa! Czy na pewno takie zachowanie jest niepoprawne? Czytaj dalej
Do wersji 11GR2 aby przenieść schemat zawierający recovery catalog, byliśmy zmuszeni używać narzędzi EXP/IMP lub zestawu narzędzi DATA PUMP EXPDP/IMPDP, będac zdanymi na szereg błędów, które były następstwem eksportu oraz importu schematu.
Przykładowa procedura przenoszenia schematu do innej bazy, lub tworzenia schematu testowego katalogu odtwarzania, wyglądała nastepująco: Czytaj dalej
W tej lekcji kursu Oracle SQL zaczniemy sortować rekordy w wyniku działania zapytania.
Jeśli chcesz posortować rekordy należy użyć klauzuli ORDER BY. Zatem do dzieła 🙂
Ostatnio w pracy podczas testów jednego z systemów spotkaliśmy się z nastepującą charakterystyką obciążenia bazy:
Top 5 events
latch: cache buffers lru chain 14,664 2,489 170 47.9
enq: TX – row lock contention 5,582 1,203 216 23.1
log file sync 60,707 807 13 15.5
enq: US – contention 204 164 806 3.2
latch: cache buffers chains 1,367 153 112 2.9
Jak widać zdarzeniem które miało największy wpływ na obciążenie bazy było:
latch: cache buffers lru chain 48% czasu pracy bazy.
Najpierw trochę teorii. Co to są wogóle latche ?
Czytaj dalej
Witam w kolejnej lekcji kursu Oracle SQL.
W tej lekcji zobaczymy jak limitować rekordy przy pomocy klauzuli WHERE.
Zapraszam do lektury!
W poprzedniej części kursu skonfigurowaliśmy poprawnie środowisko pracy, utworzyliśmy workspace i nadaliśmy użytkownikowi odpowiednie uprawnienia. Teraz z tego skorzystamy i utworzymy naszą pierwszą, przykładową aplikację Oracle APEX, a następnie zobaczymy jakie możliwości udostępnia nam to narzędzie. Poznamy zatem kilka kontrolek oraz zobaczymy różne rodzaje wykresów jakie mamy do dyspozycji. Przekonamy się również jak raport interaktywny umożliwia nam pracę z danymi, ich edycję, filtrowanie, grupowanie, agregacje i wizualizację w formie graficznej. Czytaj więcej
Tabele przestawne w Oracle 10g i 11g mają jedną wadę – wymagana jest znajomość liczby kolumn i wartości jakie trafią do sekcji kolumn. Oracle musi z góry wiedzieć ile kolumn (i jakiego typu) zwróci. Jest to problem, bo często my nie znamy tych wartości z góry. Da się go jednak ominąć. Czytaj więcej