Tablespace Definition

Werbung
<Insert Picture Here>
DOAG SAP SIG June 2007
Technical Overview Transportable Tablespaces 10g
Martin A. Sautter
Principal Member Technical Staff
Oracle / SAP Development
Agenda
•
•
•
•
•
•
•
Tablespace Definition
Konzept, Historie und Kompatibilität
Voraussetzungen
Ablaufschema
Einschränkungen
Fragen & Antworten
Beispiel
<Insert Picture Here>
Tablespace Definition
<Insert Picture Here>
• Eine Oracle Datenbank besteht aus einer
oder mehreren logischen Speichereinheiten,
diese werden Tablespace genannt.
• Jeder Tablespace besteht aus einer oder mehreren
Dateien, diese werden Datenfiles genannt.
• Die Datenfiles haben eine durch das Betriebssystem
festgelegte physikalische Struktur.
• Oracle verwendet eine konstante und bei der
Initialisierung festgelegte Blockgröße für Schreib- und
Leseoperationen.
Agenda
•
•
•
•
•
•
•
Tablespace Definition
Konzept, Historie und Kompatibilität
Voraussetzungen
Ablaufschema
Einschränkungen
Fragen & Antworten
Beispiel
<Insert Picture Here>
Konzept, Historie und Kompatibilität
BS copy
Exp
expdp
Imp
Meta
impdp
Minimum Compatibility Setting
Transport Scenario
Source Database
Target Database
Databases on the same platform
8.0
8.0
Tablespace with different database block size than
the target database
9.0
9.0
Databases on different platforms
10.0
10.0
Agenda
•
•
•
•
•
•
•
Tablespace Definition
Konzept, Historie und Kompatibilität
Voraussetzungen
Ablaufschema
Einschränkungen
Fragen & Antworten
Beispiel
<Insert Picture Here>
Voraussetzungen für einen Transport
mittels Transportable Tablespaces
• Database Characterset und National Characterset
müssen auf Ursprungs- und Zieldatenbank gleich sein.
• Der Tablespace-Name darf auf der Zieldatenbank noch
nicht verwendet sein.
• Der zu transportierende Tablespace oder das Set von
Tablespaces muss in sich abgeschlossen sein.
• Endianness von Ausgangs- und Zielplattform auf
Kompatibilität prüfen
• System-, Sysaux-, Temporary-, Undo-Tablespaces
können nicht transportiert werden.
Characterset prüfen
SQL> select * from nls_database_parameters
where parameter like '%SET' order by 1;
PARAMETER
-----------------------------VALUE
--------------------------------NLS_CHARACTERSET
UTF8
NLS_NCHAR_CHARACTERSET
UTF8
SQL>
<Insert Picture Here>
Unabhängigkeit des Tablespaces
bzw. des Tablespacesets
<Insert Picture Here>
SQL> connect / as sysdba
SQL> execute
sys.dbms_tts.transport_set_check('PSAPSR3,
PSAPSR3USR',true);
PL/SQL procedure successfully completed.
SQL> select * from sys.transport_set_violations;
no rows selected
Endianness der Plattformen
SQL> select PLATFORM_ID,PLATFORM_NAME,ENDIAN_FORMAT
from v$transportable_platform
v$transportable_platform order by PLATFORM_ID;
PLATFORM_ID PLATFORM_NAME
----------- ------------------------------ -------------1 Solaris[tm
Solaris[tm]
tm] OE (32(32-bit)
bit)
2 Solaris[tm
Solaris[tm]
tm] OE (64(64-bit)
bit)
3 HPHP-UX (64(64-bit)
bit)
4 HPHP-UX IA (64(64-bit)
bit)
5 HP Tru64 UNIX
6 AIXAIX-Based Systems (64(64-bit)
bit)
7 Microsoft Windows IA (32(32-bit)
bit)
8 Microsoft Windows IA (64(64-bit)
bit)
9 IBM zSeries Based Linux
10 Linux IA (32(32-bit)
bit)
11 Linux IA (64(64-bit)
bit)
12 Microsoft Windows 6464-bit for A
13 Linux 6464-bit for AMD
15 HP Open VMS
16 Apple Mac OS
17 Solaris Operating System (x86)
18 IBM Power Based Linux
ENDIAN_FORMAT
Big
Big
Big
Big
Little
Little
Big
Little
Little
Big
Little
Little
Little
Little
Little
Little
Big
g
Bi
Little
Big
<Insert Picture Here>
Agenda
•
•
•
•
•
•
•
Tablespace Definition
Konzept, Historie und Kompatibilität
Voraussetzungen
Ablaufschema
Einschränkungen
Fragen & Antworten
Beispiel
<Insert Picture Here>
Ablaufschema
1. Voraussetzungen prüfen
Characterset
Plattform Endianness
Tablespaceset ist self-contained
2. Tablespace READ ONLY setzen
SQL>alter tablespace TBS1 READ ONLY;
SQL>alter Tablespace TBS2 READ ONLY;
3. Export der Metadata
exp userid=\’sys/sys as sysdba\’ file=tbs_exp.dmp log=tbs.log
transport_tablespace=y tablespaces=TBS1,TBS2
Ablaufschema
3. Export Metadata mit datapump
CREATE OR REPLACE DIRECTORY dpump_dir AS '/tmp/subdir' ;
GRANT READ,WRITE ON DIRECTORY dpump_dir TO
system;
expdp system/password DUMPFILE=expdat.dmp DIRECTORY =
dpump_dir TRANSPORT_TABLESPACES= TBS1,TBS2
TRANSPORT_FULL_CHECK=Y
4. Bei unterschiedlichem Endian Format
RMAN> CONVERT TABLESPACE TBS1
TO PLATFORM 'HP-UX (64-bit)' FORMAT '/tmp/%U';
RMAN> CONVERT TABLESPACE TBS2
TO PLATFORM 'HP-UX (64-bit)' FORMAT '/tmp/%U';
5. Dateien mit Betriebssytemmittel kopieren
scp oder ftp oder rcp oder NFS-Mount,…
Ablaufschema
6. Import der Metadaten
mit IMP
imp userid=\'sys/sys as sysdba\' file=tbs_exp.dmp log=tba_imp.log
transport_tablespace=y datafiles='/tmp/....','/tmp/...'
unter Verwendung von datapump
CREATE OR REPLACE DIRECTORY dpump_dir AS '/tmp/subdir' ;
GRANT READ,WRITE ON DIRECTORY dpump_dir TO system;
impdp system/password DUMPFILE=expdat.dmp
DIRECTORY=dpump_dir
TRANSPORT_DATAFILES='/tmp/....','/tmp/...'
REMAP_SCHEMA=(source:target)
REMAP_SCHEMA=(source_sch2:target_schema_sch2)
You can use REMAP_SCHEMA if you want to change the ownership
of the transported database objects.
Ablaufschema
7. Tablespace READ/WRITE setzen
SQL>alter tablespace TBS1 READ WRITE;
SQL>alter Tablespace TBS2 READ WRITE;
Agenda
•
•
•
•
•
•
•
Tablespace Definition
Konzept, Historie und Kompatibilität
Voraussetzungen
Anwendungs Bereich Ablaufschema
Einschränkungen
Fragen & Antworten
Beispiel
<Insert Picture Here>
Einschränkungen für Transportable
Tablespaces
• Opaque Types (RAW,BFILE,..)
opaque types können transportiert werden. Bei der
Konvertierung der endiannes werden sie nicht berücksichtigt
• Floating-Point Numbers BINARY_FLOAT
BINARY_DOUBLE Typen
können nur mit Datapump transportiert werden
• Objekte mit “underlying objects”
wie materialized views oder “contained objects” wie partitioned tables
verlangen ein TABLESPACESET das alle Objects beinhaltet.
• Objekte von user sys können nicht transportiert
werden
Agenda
•
•
•
•
•
•
Tablespace Definition
Konzept, Historie und Kompatibilität
Voraussetzungen
Anwendungs Bereich Ablaufschema
Einschränkungen
Fragen & Antworten
<Insert Picture Here>
Fragen und Antworten
F
&
A
metalink.oracle.com
Or
oracle.com
Agenda
•
•
•
•
•
•
•
Tablespace Definition
Konzept, Historie und Kompatibilität
Voraussetzungen
Anwendungs Bereich Ablaufschema
Einschränkungen
Fragen & Antworten
Beispiel
<Insert Picture Here>
Herunterladen