Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Frage Entwicklung Datenbanken

GELÖST

Oracle 9.2 - Tablespace ändern bei Datenimport bzw. -export

Mitglied: haegar4020

haegar4020 (Level 1) - Jetzt verbinden

14.06.2007, aktualisiert 15.06.2007, 12326 Aufrufe, 5 Kommentare

Schema Kopie per exp und imp soll in andere Tablespaces

Hallo!

Bei unserer Oracle 9.2.0.6 speichert eine Applikation alle Daten unter dem Schema/dem User PROD in der Instanz db01. Die DB-Objekte des Schemas sind in 3 verschiedenen Tablespaces (TS1,TS2,TS3) abgelegt.

Nun möchte ich aus Testzwecken eine Testumgebung erstellen und dazu eine Kopie des Schemas in der gleichen Instanz erstellen. Ich exportiere dazu zuerst die Daten per exp.exe von User PROD:

01.
exp system@db01 file=c:	empprod.dmp owner=PROD consistent=y buffer=20000000
Danach mache ich ein DROP auf den Testuser TEST und erstelle ihn neu mit Default-Tablespace TSTEST.

01.
imp system@db01 file=c:	empprod.dmp fromuser=PROD touser=TEST buffer=20000000

Soweit funktioniert es auch noch. Nur liegen die Tabellen im Schema TEST in den gleichen Tablespaces wie die aus dem Schema PROD (TS1-3), und nicht komplett - nämlich überhaupt nicht - in Tablespace TSTEST.

Gibt es dafür eine Lösung?


Klaus
Mitglied: Biber
14.06.2007 um 10:45 Uhr
Moin haegar4020,

willkommen im Forum.


Ich verstehe Dein Problem in zweifacher Hinsicht nicht:
  • die "kopierten" Daten liegen doch in einem anderen Schema ("Test"). Und jedes Schema, also auch das "Original" ("Prod") verwaltet doch eigene Tablespaces. Dann gibt es doch keine Kollisionen zwischen PROD.TS1 und TEST.TS1 ?
  • und WTF sollte Oracle oder sonst irgendjemand auf die Idee kommen, die "importierten" Daten in einen Tablespace namens TSTEST zu stellen? Da verstehe ich Deine Erwartungshaltung nicht ganz

Grüße
Biber
Bitte warten ..
Mitglied: Bolle97
14.06.2007 um 11:38 Uhr
Hallo,

irgendwo hat Biber schon recht.
Ich kann Dich aber auch verstehen, manchmal möchte man die Tabellen/Indizes halt in einen anderen Tablespace haben.
Ich sehe daher zwei Möglichkeiten:

1. CREATE TABLE TEST.xxx AS SELECT * FROM PROD.xxx;
Vorher dem User TEST den gewünschten Tablespace als Default geben, Indizes, Constraints und Rechte alle
manuell anlegen oder vorab Skripte schreiben.

2. Zwei Exports machen, einen mit, einen ohne Daten (ROWS=N). Den ohne Daten importieren,
Tabellen werden angelegt (im "falschen" TS),
diese mit ALTER TABLE xxx MOVE TABLESPACE xxxx; verschieben und dann den vollen Export (mit Daten) mit der Option
IGNORE=Y importieren.

Gruß - René
Bitte warten ..
Mitglied: haegar4020
14.06.2007 um 14:19 Uhr
Erstmal danke für die Anregungen.

@Biber:
ad 1. Als in meinem Oracle gibt es den TS1 nur einmal, und sowohl Tabellen vom Schema PROD als auch vom Schema TEST sind darin enthalten.

ad 2. Nunja, meine Erwartung war, dass der Default-Tablespace (TSTEST) des Schemas greift und die importierten Daten allesamt darin landen.

@René:
ad 1. Da die Tabellen aus einer zugekauften Applikation sind habe ich für die ca. 3000 Tabellen, Views, Constraints etc. keine CREATE Skripts. Mir ist auch kein Verfahren bekannt, wie ich die CREATE Skripts aus einer bestehenden DB erstellen könnte, PHPMyAdmin geht ja nicht für Oracle.

ad 2. wäre ev. noch einen Versuch Wert, die DBObjekte müsste ich ja als Liste aus irgendwelchen Oracle-Systemviews/tables bekommen, dann noch ein regexp-Ersetzen und die ALTER-Statements sollten dastehen.


Ich inzwischen selber noch rumgesucht und bin auch auf einen anderen Lösungsvorschläge gestoßen:

Wie unter Orafaq.com zu lesen ist, wird soll man dem neuen User/Schema keinen UNLIMITED TABLESPACE zugestehen, und auf die alten TS - in meinem Fall die der Produktivdatenbank - keine Quota geben. Danach sollte ein Import mit ignore=y die Objekte im Default-Tablespace des Schemas anlegen. Leider funktioniert das in meinem Fall aber nicht mit allen Objekten. Einige Tabellen hat das imp-Util mit expliziten CREATE TABLE [...] TABLESPACE TS1 etc. anzulegen versucht, ist dann aber an den fehlenden Rechten des Users TEST gescheitert, womit die Daten dann nicht vollständig waren.

Hilft mir vielleicht dieser ominöse transportable tablespace Modus vom imp/exp Utility? Kann ich damit irgendwie den Tablespace beim Import umbiegen?

Klaus
Bitte warten ..
Mitglied: Bolle97
15.06.2007 um 08:26 Uhr
Hallo,

nein, der "Transportable Tablespace"-Modus wird Dir nicht helfen, TTS ist für den Transport zwischen 2 Datenbanken gedacht.
Ein neuer Ansatz:
Bei 3000 Objekten solltest Du mal über eine eigene Testdatenbank auf einem eigenen Server nachdenken oder einen zweite Instanz auf deinem Server erstellen. Somit hättest Du mit Import und Export kein Problem mehr.
Noch eine weitere Sache, es gibt bei Oracle ein Package, welches die Definitionen von alles Objekten liefert, der Name fällt mir im Moment nicht ein, ich melde mich nochmal.

Gruß - René
Bitte warten ..
Mitglied: Bolle97
15.06.2007 um 09:23 Uhr
Hallo,

das Package nennt sich DBMS_METADATA .

Gruß - René
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Powershell Datenimport
gelöst Frage von derhoeppiBatch & Shell16 Kommentare

Hallo, ich bin gerade bei einem Gedankenspiel, welches ich auch schon kurz getestet habe. Ich habe eine CSV Datei, ...

Microsoft Office
Automatischer Datenimport aus csv Datei in Access DB - Wo zu ändern?
Frage von Mejestic12Microsoft Office2 Kommentare

Hallo, ich habe von einem Kollegen (der ist kurzfristig Langzeitkrank geworden) eine Access DB übernommen. Leider gibt es dazu ...

Microsoft Office
Nur Formularfelder drucken nach Datenimport
gelöst Frage von NapumukMicrosoft Office2 Kommentare

Hallo, ich habe mir nach einer Anleitung eine eigene Word Vorlage die beim Öffnen Daten aus Excel einfügt erstellt, ...

LAN, WAN, Wireless
Konfiguration von VLANs auf einer SophosUTM 9.2 in der Testumgebung
gelöst Frage von JohnDorianLAN, WAN, Wireless6 Kommentare

Hallo Zusammen, folgende Konfiguration habe ich momentan in einer Testumgebung aufgebaut: Hardware: Switch01 (HP 1810-48G) SophosUTM 9.2 (auf Hyper-V; ...

Neue Wissensbeiträge
Linux

Meltdown und Spectre: Linux Update

Information von Frank vor 16 StundenLinux

Meltdown (Variante 3 des Prozessorfehlers) Der Kernel 4.14.13 mit den Page-Table-Isolation-Code (PTI) ist nun für Fedora freigegeben worden. Er ...

Tipps & Tricks

Solutio Charly Updater Fehlermeldung: Das Abgleichen der Dateien in -Pfad- mit dem Datenobject ist fehlgeschlagen

Tipp von StefanKittel vor 1 TagTipps & Tricks

Hallo, hier einmal als Tipp für alle unter Euch die mit der Zahnarztabrechnungssoftware Charly von Solutio zu tun haben. ...

Sicherheit

Meltdown und Spectre: Wir brauchen eine "Abwrackprämie", die die CPU-Hersteller bezahlen

Information von Frank vor 1 TagSicherheit12 Kommentare

Zum aktuellen Thema Meltdown und Spectre: Ich wünsche mir von den CPU-Herstellern wie Intel, AMD oder ARM eine Art ...

Sicherheit

Meltdown und Spectre: Realitätscheck

Information von Frank vor 1 TagSicherheit9 Kommentare

Die unangenehme Realität Der Prozessorfehler mit seinen Varianten Meltdown und Spectre ist seit Juni 2017 bekannt. Trotzdem sind immer ...

Heiß diskutierte Inhalte
Sicherheit
Meltdown und Spectre: Die machen uns alle was vor
Information von FrankSicherheit25 Kommentare

Aktuell sieht es in den Medien so aus, als hätten die Hersteller wie Intel, Microsoft und Co den aktuellen ...

Netzwerke
Packet loss bei "InternetLeitungsvollauslastung"
gelöst Frage von Freak-On-SiliconNetzwerke17 Kommentare

Servus; Ja der Titel klingt komisch, is aber so. Wenn die Internetleitung voll ausgelastet ist, hab ich extreme packet ...

Ubuntu
Ubuntu - Starter für nicht vertrauenswürdige Anwendungen
Frage von adm2015Ubuntu17 Kommentare

Hallo zusammen, Ich verwende derzeit die Ubuntu Versionen 17.10 bzw. im Test 18.04. Ich habe mehrere .desktop Dateien in ...

Windows 10
Automatische daten kopieren, USB zu USB unter Win10 im Hintergrund
Frage von DerEisigeWindows 1016 Kommentare

Hallo Leute, ich bin auf der Suche nach einem Skript, dass von einem USB Stick automatisch nach dem einstecken ...