Export tablespace Oracle 10g: Transportable Tablespace

Transportable Tablespace eri alustoilla
___________________________________________________
esimerkissämme kuljetamme pöytätason, jota kutsutaan testiksi. Tablespace-tilan tulee olla itsenäinen ilman objekteja, jotka viittaavat muihin pöytätiloihin, jotta voidaan tarkistaa, onko tablespace-käyttöjärjestelmä itsenäinen alla olevalla kyselyllä:

suorita DBMS_TT.transport_set_check (”TEST”, TRUE, TRUE);
valitse * FROM transport_set_violations;

jos sinulla on ristiviittauksia kohteisiin. Pudota nämä objektit TESTITAULUKOISTA (huomaa, että tämä tehdään testiympäristössä, jotta voin pudottaa ristiviittaukset helposti. Älä pudota mitään esineitä kuulematta vanhempi DBA tuotantoympäristössä. Koskaan ei tiedä, millä esineellä on millainen riippuvuus. Oletetaan, että TESTITAULUKOISSA on indeksejä, jotka osoittavat toisen taulukkotason taulukoihin. Voit turvallisesti siirtää näitä indeksejä käyttämällä alla pl / sql-menettelyä:

begin
for c1 in (valitse indeksi_nimi a1 user_indexeistä)
loop
suorita välitön ’alter index ’||c1.a1 / | ” rebuild Online tablespace <tablespace name>”;
end loop;
end;
/

nyt jatkaa ja tarkistaa rikkomukset uudelleen. Jos saat virheen, kuten:

valitse * FROM transport_set_viations;
rikkeitä
—————————
rikkomus 46: yhteydenotto Oraclen tukeen
rikkomus 46: yhteydenotto Oraclen tukeen
rikkomus 46 : ota yhteyttä Oraclen tukeen

suorita tämä kysely tarkistaaksesi, miksi rikkomus heittää

valitse TRIM(OBJ1_OWNER)||’, ’ | | TRIM (OBJ1_NAME) || ’, ’ ||
TRIM (OBJ1_SUBNAME)||’, ’ | / TRIM (OBJ1_TYPE) || ’, ’ ||
TRIM (TS1_NAME)|/’, ’ | / TRIM (OBJ2_OWNER) || ’, ’ ||
TRIM (OBJ2_NAME)||’, ’ | / TRIM (OBJ2_SUBNAME)) || ’, ’ ||
TRIM (OBJ2_TYPE)||’, ’ | | TRIM(TS2_NAME) || ’, ’ ||
TRIM(CONSTRAINT_NAME) || ’, ’ || TRIM (REASON)
FROM PLUGGABLE_SET_CHECK
WHERE MESG_ID=46;

tästä saadaan tuotos siitä, mikä on tarkalleen ottaen rike kuljetettavien taulukoiden osalta. Korjaa nämä rikkomukset ja aloita varsinainen menettely pöytien siirtämiseksi. Esimerkissäni olin käyttänyt Transparent Data Encryption (TDE) muutamia sarakkeita tietokantaan. Kyselyssä kerrottiin, että et voi käyttää TT_TBS: ää, kun sinulla on salattuja sarakkeita. Joten minun oli purettava sarakkeet, jotka salasin käyttäen kyselyn kuten.

valitse * FROM DBA_ENCRYPTED_COLUMNS;
ALTER TABLE account MODIFY (kortinhaltijan salauksen poisto);

sarakkeiden salauksen purkamisen jälkeen. Etenemme edelleen
1. Tarkista ENDIAN versio sekä lähde ja kohde käyttäen alla skripti:


— mitkä ovat käytettävissä olevat kuljetettavat Tablespace-Alustamahdollisuudet?

valitse
platform_name
, endian_format
FROM v$transportable_platform
ORDER BY platform_name
;

— mikä on tietokantani ja alustani nykyinen ENDIAN-ness?

valitse
D.name
, TP. endian_format
FROM
v$transportable_platform TP
,v$database D
WHERE TP.platform_name = D. platform_name
;

se ilmoittaa, jos ENDIAN on ”pieni” tai ”iso”. Jos endian on sama sekä kohde-että lähde, ei tarvitse mennä siirrettävissä taulukoita. Voit vain viedä pöytätilan ja tuoda sen kohteeseen. Jos ei edetä kuten alla
2. Muuta taulukkotilaa ja aseta se vain luku-tilaan lähdekoodiin. Esimerkissämme kuljetamme testiksi kutsutun pöytätason kohdepalvelimelle.
ALTER TABLESPACE test READ ONLY;
3. vie nyt tablespace-metatiedot.

##Windows## #
exp USERID= ”system/oracle@Source AS SYSDBA” TRANSPORT_TABLESPACE=y TABLESPACES=test FILE = test_repository.DMP log=test_repository.txt

###Unix## #
exp \ ’sys / oracle AS SYSDBA\’ TRANSPORT_TABLESPACE=y TABLESPACES=test FILE=test_repository.DMP log=test_repository.txt

Siirry Targetiin ja kopioi dumpfile mihin tahansa paikkaan yhdessä kyseisen taulukoiden datafileiden kanssa.

imp \’sys/oracle AS SYSDBA\’ TABLESPACES=test TRANSPORT_TABLESPACE=y FILE=test_repository.DMP datafiles= ” users_01.dbf’

4. Till edellä on, kun olet viemässä tablespace koneeseen, jolla on sama endian tiedot. Jos eri endian edetä kuten alla. Muunnamme Solaris 64-bittisestä SPARCISTA (BIG) Windows 32-bittiseen(Little)
5. Muunna tiedostotiedostot käyttäen RMAN ja db_file_name_convert

#älä käytä tätä menetelmää: Source Machinessa: alkuperäisellä tiedostonimellä
RMAN> Muunna tablespace ’TEST’
to platform ”Microsoft Windows IA (32-bit)”
format=” / datafiles / rmanbkp / %n_%f ”
parallelism = 4;

## käytä tätä menetelmää: Source machine: Muunnetulla tiedostonimellä tiedostonimi
RMAN> Muunna tablespace ’testi’
2> alustalle ”Microsoft Windows IA (32-bit)”
3> db_file_name_convert ”/ datafiles / oradata / SWX”, ”/datafiles/rmanbkp ”
4> parallelism = 4;

kun tiedostot muunnetaan se löytyy ’/ datafiles / rmanbkp’. Kopioi nämä muunnetut tiedostot yhdessä metadata dump of TT_TBS ja laita se source server ja suorita tuonti:

imp USERID= ”system / password@target AS SYSDBA”
TRANSPORT_TABLESPACE=y
DATAFILES= ” C:\datafiles\test01.DBF”, ” C:\datafiles\test02.DBF ”
TABLESPACES = test
FILE = test_repository.dmp

edellä mainituissa tapauksissa muunnimme tiedostot lähdealustalla. Kuitenkin, voit tehdä, että kohdealustalla samoin. Esimerkiksi, voit kopioida tiedoston test01.dbf yhdessä metadata dump Windows Server 2003 32-bittinen Kohdekone ja muuntaa sen siellä:

RMAN> Muunna
2> datatiedosto ” c:/users01.dbf ’ ##directory where you ’ll put your datafile from source server
3> format ’c:/datafiles/rmanbkp/%N_%f” ##hakemisto, josta saat muunnetun tiedoston
4> ;

tällä lähestymistavalla luodaan tiedosto hakemistossa määritetyssä muodossa.
mutta miksi haluat muuntaa datafileet kohdealustalla, tarkalleen? Yksi syy voi olla lyhyempi seisokki, joka edellyttää, että pöytätilat luetaan vain sen ajan, kun kopio lähetetään kohdeis-isännälle. Voit kolminkertainen peili datafile, tehdä tablespace vain lukea, rikkoa kolmas peili, ja heti tehdä tablespace lukea/kirjoittaa. Kolmas peili voidaan sitten asentaa kohdejärjestelmään ja muuntaa vapaa-ajalla. Tällä järjestelyllä minimoidaan se kesto, jonka ajan taulukoiden on pysyttävä vain luettavina.
toinen syy voi olla suoritus. OLTP-tietokanta voi olla jatkuvan kuormituksen alaisena ja RMAN-muunnos-toiminnon käyttäminen saattaa rasittaa järjestelmää enemmän kuin halutaan. Sen sijaan muunnos voidaan purkaa tietovaraston palvelimelle, jossa rinnakkaisoperaatioihin on yleensä saatavilla useampia suorittimia.

Write a Comment

Sähköpostiosoitettasi ei julkaista.