ORACLE-vienti (exp) vs Datapump (expdp)
ORACLE tarjoaa kaksi ulkoista apuohjelmaa tietokantaobjektien siirtämiseen tietokannasta toiseen. Perinteiset vientituotteet (exp /imp) otetaan käyttöön ennen 10g. Sitten 10 g:stä ORACLE esitteli datapumpun (expdp / impdp) perinteisen vientityökalun parannuksena.
Perinteinen vienti (exp/imp)
Tämä on ORACLE-tietokannan ulkoinen apuohjelma, jota käytetään tietokantaobjektien siirtämiseen yhdestä tietokantapalvelimesta toiseen tietokantapalvelimeen. Se mahdollistaa tietokantaobjektien siirtämisen eri alustoilla, erilaisilla laitteisto- ja ohjelmistokokoonpanoilla. Kun vientikomento suoritetaan tietokannassa, tietokantaobjektit puretaan niiden riippuvuusobjektien kanssa. Tämä tarkoittaa, että jos se purkaa taulukon, riippuvuudet, kuten indeksit, kommentit ja avustukset, puretaan ja kirjoitetaan vientitiedostoon (binäärimuotoinen vedostiedosto). Seuraava on komento viedä koko tietokanta, Cmd > exp userid=käyttäjänimi/[sähköposti suojattu]_tns file=export.dmp log=export.log full=y tilastot=ei mitään
Yllä oleva komento viedään tietokanta binäärivedostiedostoon nimeltä export.dmp. Sitten imp-apuohjelmalla voidaan tuoda nämä tiedot toiseen tietokantaan. Seuraava on tuontikomento
Cmd > imp userid=käyttäjänimi/[sähköposti suojattu]_tns file=export.dmp log=import.log full=y tilastot=ei mitään
Datapump Export (expdp/ impdp)
Tämä on myös ulkoinen ORACLE-tietokannan apuohjelma, jota käytetään objektien siirtämiseen tietokantojen välillä. Tämä apuohjelma tulee ORACLE 10g -tietokannasta. Siinä on enemmän parannuksia kuin perinteisissä exp/imp-apuohjelmissa. Tämä apuohjelma tekee myös dump-tiedostoja, jotka ovat binäärimuodossa tietokantaobjektien, objektien metatietojen ja niiden ohjaustietojen kanssa. expdp- ja impdp-komennot voidaan suorittaa kolmella tavalla,
- Komentoriviliittymä (määritä expdp/impdp-parametrit komentorivillä)
- Parametritiedoston käyttöliittymä (määritä expdp/impdp-parametrit erillisessä tiedostossa)
- Interaktiivinen komentoliittymä (erilaisten komentojen syöttäminen vientikehotteeseen)
Tietojen purkamiseen expdp:llä on viisi erilaista tapaa. He ovat
- Täysi vientitila (koko tietokanta on ladattu)
- Kaaviotila (tämä on oletustila, tietyt skeemat poistetaan)
- Taulukkotila (määritetty joukko taulukoita ja niistä riippuvat objektit poistetaan)
- Taulukkotilatila (määritetyn taulukkotilan taulukot tyhjennetään)
- Siirrettävä taulukkotilatila (vain määritetyssä taulukkotilajoukossa olevien taulukoiden ja niistä riippuvien objektien metatiedot poistetaan)
Seuraava tapa viedä koko tietokanta käyttämällä expdp:tä, Cmd > expdp userid=käyttäjänimi/salasana dumpfile=expdp_export.dmp logfile=expdp_export.log full=y directory=export
Sitten impdp-apuohjelmaa tulee käyttää tuomaan tämä tiedosto toiseen tietokantaan.
Mitä eroa on perinteisellä viennillä ja datapumpulla?
• Datapump toimii tiedostoryhmässä, jota kutsutaan vedostiedostojoukoiksi. Normaali vienti toimii kuitenkin yhdellä tiedostolla.
• Datapumpun tiedostot palvelimessa (ORACLE-hakemistojen avulla). Perinteisellä viennillä voidaan käyttää sekä asiakkaan että palvelimen tiedostoja (ei ORACLE-hakemistoja).
• Vientit (exp/imp) edustavat tietokannan metatietotietoja DDL:inä vedostiedostossa, mutta datapumpissa se edustaa XML-dokumenttimuotoa.
• Datapumpussa on rinnakkaissuoritus, mutta exp/imp-yksittäisvirtasuorituksessa.
• Datapumppu ei tue peräkkäisiä tietovälineitä, kuten nauhoja, mutta tukee perinteistä vientiä.