Backup bazy oracle

lipiec 12th, 2008


Backup bazy oracle

Backup bazy możemy zrobić na kilka sposobów:

-) poprzez eksport danych używając polecenia exp lub expdb - taki backup  jest nazwany backupem logicznym,

-) backup fizyczny tu mamy dwa rodzaje “cold backup” tzn. robimy fizyczny backup wszystkich plików bazy danych przy POŁOŻONEJ BAZIE DANYCH - warunek konieczny, w innym przypadku backup jest nieużyteczny. Innym fizycznym backupem jest backup zwany “Hot backup” jest to backup wykonywany na bazie która jest  postawiona i pracują na niej użytkownicy.

Cold backup jest wygodniejszy i szybszy ale niestety nie na wszystkich  bazach można go zrobić, ponieważ są takie bazy które muszą pracować cały czas 7×24 i nie możemy ich zamykać. W takim  przypadku możemy zrobić tylko hot backup.

Hot backup należy oskryptować skryptami najlepiej shelowymi. Jeszcze  jedna najważniejsza uwaga, BAZA musi być w trybie ARCHIVELOG. Oracle stworzył narzędzie które służy do robienia  backup-u jego nazwa to RMAN (Recovery Manager). Z RMAN-em komunikujemy pisząc polecenia z linii poleceń.


Jak działa SQL*Loader ?

lipiec 12th, 2008


SQL*Loader przykłady jak działa:

Przykładowe polecenie może wyglądać następująco

sqlldr nazwa_usr/haslo DATA=plik_danych.dat CONTROL=ctl_plik.ctl LOG=plik.log 

plik ctl_plik.ctl jest chyba najważniejszy tu definiujemy jak i co ma być uplodowane, w środku może wyglądać  następująco:

LOAD DATA
INFILE plik_danych.dat
INTO TABLE nazwa_tabeli
REPLACE
FIELDS TERMINATED BY ‘,’ OPTIONALLY ENCLOSED BY ‘”‘
(
nazwa_departamentu,
imie,
nazwisko
)

plik plik_danych.dat może mieć następującą postać:

23,’Piotr’,'Kowalski’
43,’Łukasz’,'Podolski’
21,’Maria’,'Kuźniecowa’

No i jeszcze musimy mieć obiekt w bazie danych - tabelę do której dane maja być załadowane
tworzymy tabelę nazwa_tabeli

create table nazwa_tabeli (
nazwa_departamentu NUMBER(3),
imie VARCHAR2(15),
nazwisko VARCHAR2(15)
);


Możliwości SQL*Loader-a

lipiec 12th, 2008


Program SQL*Loader możliwości:

-) ładowanie danych przez sieć, ze stacji klienckiej ładujemy dane na serwer
-) ładowanie danych z wielu plików podczas tej samej sesji
-) ładowanie danych do wielu tabel podczas jednej sesji
-) ustawianie character set dla danych
-) ładowanie tylko wybranych danych
-) ładowanie danych wykorzystując do selekcji danych SQL-owych funkcji
-) generowanie unikalnej sekwencji (klucz) w wybranej kolumnie
-) ładowanie danych z dysku, taśmy itp.