Przejdź do treści

Eksport Import – 10 Rzeczy, o Których Musisz Pamiętać

export import upgrade migracja bazy danych

Jeśli nie przygotujesz się należycie, wykonując eksport i import bazy danych, mogą pojawić się błędy. Cały proces będzie przez to skomplikowany i czasochłonny. Jak ich uniknąć ? Przejdź przez poniższą check listę a oszczędzisz mnóstwo czasu i nerwów.

Technika eksportu i importu bazy danych może być bardzo efektywnym sposobem do migracji bazy danych na inną platformę. Data Pump może działać zadziwiająco szybko i jest efektywnym narzędziem do przenoszenia danych pomiędzy platformami. W szczególność kiedy platformy różnią się w formacie zapisu danych – BigEndin, LitleEndian.

Przygotowanie do eksportu bazy danych.

planowanie eksportu importu export bazy danych

  1. Przygotowując bazę danych do eksportu sprawdź takie rzeczy jak ilość obiektów INVALID, rozmiar danych, rozmiar plików redo, strona kodowa.
  2. Utwórz docelową bazę danych. Optymalnym sposobem tworzenia bazy danych jest wybór opcji “custom”. Tylko wtedy utworzysz bazę danych ze skryptów, w innych przypadkach jest to kopia wcześniej utworzonej bazy danych. Baza danych zawiera wtedy zbędne schematy oraz niepotrzebne opcje. Nowa baza powinna zawierać jak najmniej zbędnych komponentów.
  3. Pamiętaj o stronie kodowej. Jeśli migrujesz bazę danych bez zamiany strony kodowej, ustaw ją taką jak na źródle. Dzięki temu unikniesz wielu kłopotów po uruchomieniu aplikacji. Strona kodowa jest jedną z niewielu ustawień bazy danych, których nie można zmienić (przynajmniej w prosty i supportowany sposób).  Zmiana strony kodowej wymaga również przygotowania aplikacji do jej obsługi.
  4. Przygotuj przestrzenie tabel. Import nie utworzy brakujących przestrzeni tabel, trzeba zadbać o to we własnym zakresie. Uwaga – sprawdź czy są wszystkie domyślne przestrzenie tabel użytkowników.
  5. Sprawdź, czy nie masz obiektów aplikacji w schemacie SYS lub SYSTEM. Te konta nie się eksportują i zdarza się, że znajdują się tam obiekty wykorzystywane przez aplikację. Nie powinno się tego robić, ale zdarzają się takie przypadki
  6. Sprawdź, czy działają linki bazodanowe. DB linki są przenoszone przez eksport/import, ale często wykorzystują definicję innych baz danych zapisanych w pliku tnsnames.ora. Przed importem warto sprawdzić, czy aliasy do innych baz danych zostały przeniesione i czy działają. Być może potrzebujesz dodatkowo otwarcie portów na firewallu. Niedziałający db_link może spowodować, że dużo obiektów będzie ze statusem INVALID oraz czas importu znacznie się wydłuży.

Właściwy proces – eksport i import.

migracja bazy danych upgrade export eksport import
  1. Po imporcie pamiętaj o przeniesieniu jobów. Masz w bazie joby bazodanowe zdefiniowane w schematach sys i system ? To po imporcie sprawdź, czy wszystkie ostały prawidłowo przeniesione.
  2. Przenieś zadania związane z backupem bazy danych.  Jeśli baza jest objęta polityką kopii zapasowych, to trzeba przenieść ją na system docelowy. 
  3. Jeśli wykonujesz eksport/import tylko wybranych użytkowników, nie zapomnij o wcześniejszym przeniesieniu profili oraz ról dla nich. W przeciwnym wypadku import zakończy się błędem.
  4. Na koniec najważniejsza zasada – jeśli ją pominiesz, to Twoja prawdopodobnie będziesz musiał powtórzyć całą operację. Postaraj się wykonać spójny eksport danych, czyli najlepiej przed całą operacją: 
    1. Wykonaj restart bazy danych – jesli nie masz takiej możliwości, to sprawdź, czy nie ma dużych operacji, które modyfikują bazę.
    2. Zatrzymaj joby bazodanowe one również mogą zacząć modyfikować dane w trakcie importu.
    3. Włącz na bazie tryb restricted – wtedy tylko użytkownicy z uprawnieniami DBA mogą się zalogować. Eksport również, musi wykonać użytkownik z prawami DBA.
    4. Uruchom eksport z opcją flashback_time=systimestamp.

Ta lista pozwoli Ci uniknąć 90% problemów i jeśli przygotowujesz się do migracji tym sposobem, warto przez nią przejść. Zostanie 10% problemów do rozwiązania. Większość będzie  wynikała ze specyfiki danych i aplikacji, więc jest duża szansa, że nie trafisz na żadne inne problemy.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.