Home
ifddt Benutzerhandbuch
Contents
1. Ladevorg nge lassen sich prinzipiell beschleunigen indem mehrere Ladeprozesse gleichzeitig gestartet werden Dies gilt nicht nur f r Mehrprozessor Systeme sondern durchaus auch f r Ein Prozessor Systeme Beobachtet man w hrend des Ladevorgangs die Systemauslastung so l sst sich eine durchschnittliche Auslastung der Systemressourcen von etwa 50 ausmachen Ursache hierf r sind die intern synchron ablaufenden Vorg nge d h es werden entweder Daten gelesen oder verarbeitet oder geschrieben Beim Lesen und Schreiben von Daten ist der Prozessor unbelastet beim Verarbeiten der Daten sind die Festplatten unbelastet Um die Ressourcen besser zu nutzen empfiehlt es sich die Daten parallel zu laden und somit die Ressourcen besser zu nutzen Dies gilt aber nur dann wenn w hrend des Ladevorgangs keine weiteren Benutzer das System belasten Mittels der Sub Optionen von ifddt k nnen Sie daf r sorgen dass die Tabellen parallel geladen werden Zun chst wird ifddt die Tabellen mit den richtigen Extent Gr en anlegen und anschlie end werden die Daten parallel in die Tabellen bertragen Auch die Anwendung des HPL stellt dabei kein Widerspruch dar das hei t die Sub Optionen des ifddt k nnen durchaus zusammen mit den High Performance Loader Optionen angewendet werden Zum Aktivieren der parallelen Verarbeitung verwenden Sie die g Optionen Diese Optionen machen es erforderlich den Namen der Zieldatenbank anzugeben W hrend in fr heren V
2. iidsp ifddt Benutzerhandbuch spezifische Rechtezuweisungen Benutzerangaben innerhalb von Views werden nur analysiert und entfernt sofern Sie neben der Option a die Umgebungsvariable DDTINVIEW auf einen Wert gr er oder gleich 1 gesetzt haben Diese Option steht nicht im Widerspruch zur nachfolgend erkl rten Option o owner 4 21 Bestimmte Benutzertabellen ausgeben o owner M chten Sie aus einer Datenbank alle Tabellen in eine andere Datenbank bernehmen die einem bestimmten Benutzer geh ren so k nnen Sie die Option o owner einsetzen wobei Sie owner durch den Benutzernamen ersetzen Diese Option wirkt nicht selektierend wie die Option t wird die Option t nicht mit angegeben so werden alle brigen Objekte der Datenbank Stored Procedures etc mit bernommen Wollten Sie dies vermeiden so w hlen Sie die zus tzliche Angabe der Option t 4 22 Views Trigger Procedures und Synonyme auslagern b datei In Umgebungen mit mehreren Datenbankservern ist es blich Views und Synonyme zu definieren die sich auf externe Datenbanken beziehen Ebenos k nnen Stored Procedures Anwendung finden die in anderen Datenbanken definiert wurden Eine bernahme einer solchen Datenbank in eine andere wird Probleme aufwerfen wenn diese vom Ziel System aus nicht erreichbar ist oder wenn im Zielsystem die externe Datenbank anders benannt wird oder erst sp ter bernommen wird Bei der bernahme w rden zwangsl ufig
3. unter der informix Kennung laufen e Der Web Server mu ein UNIX Shell Skript ausf hren k nnen e Die sqlhosts Datei mu eine Verbindung zu allen beteiligten IBM Informix Dynamic Server Instanzen erm glichen Bei Bedarf k nnen Sie die in der Installationsanleitung beschriebenen Umgebungsvariablen dirket im CGI Skript an Ihr System anpassen 5 5 Festplatten Layout Bedenken Sie stets dass beim Entladen von Daten sowie beim Kopieren von Daten gro e Datenmengen auf Ihre Festplatten geschrieben werden Daher ist es sehr empfehlenswert die Festplatten zuvor auf ihre Geschwindigkeit hin zu berpr fen und ggf zu optimieren Als u erst n tzlich hat es sich bei verschiedenen Tests erwiesen wenn Sie die Daten auf den Festplatten physikalisch gleichm ig verteilen Versuchen Sie probeweise mit Hilfe des UNIX Werkzeugs dd die Geschwindigkeit der Festplatten beim Schreiben gro er Datenmengen zu testen noch bevor sich auf den Festplatten wichtige Daten befinden Beachten Sie dabei dass alle Daten die sich vor dem Test auf den Festplatten befanden durch diesen Test zerst rt werden time dd if dev zero of dev rchunkl bs 4k count 100000 Mit diesem Test schreiben Sie ca 400MB auf die Platten die sich hinter der Ger tedatei dev rchunkl befinden Die reale Antwortzeit dieses Befehls sollte nicht oberhalb 100 Sekunden liegen Dauert dieser Vorgang l nger als 100 Sekunden so wenden Sie sich bitte an Ihren Hardware und
4. Z level ce 21 a9 3 Umsehunzsvanable DBEMONET nee 27 4 9 4 Alphanumerische Werte konvertieren datei u uu uu0emnen 28 4 10 Verzpere Indezanlage i und DI ea 29 Inhaltsverzeichnis 4 Bedienungsanleitung 4 11 Indizes reorganisieren Ads ana aa ai 30 2 12 Datenbanken pet HB a S 31 AT C stered MAZES u E AEAEE EE 32 EL Tabelen EHRE TEN D nenne E 32 4 14 Umgebungsvariable INFORMIXSERVER setzen u susas0sssunsscensanesnunnannensne 32 4 15 Kopieren einer Datenbank innerhalb eines Servers sssrinin gt 4 16 Tabellen sclekuierem RT een 34 4 161 Tabellenrechte nicht unlerdeickn Hal an 34 4 16 2 Metareichen in Tabellen Misie nisin cdieteikiiania ida iiaeaa ieia 35 A 16 3 Zugeh rige Views entladen 35 4 16 4 Tabelle vor der Anlage l schen IH anne 33 2 165 Stored Pose ausg ben f Jennsnrenareninnn aet 36 417 Tabellen Kopien ana A AT E 36 4 18 Transformationen F datei aan 36 LITA gemene Opine ienai aaia e 31 4 20 Benutzernamen umerdr cken a anne 37 4 21 Bestimmte Benutzertabellen ausgeben o owner sssssssssssessesessseseseresersseee 38 4 22 Views Trigger Procedures und Synonyme auslagern b datei 38 2 Schnelle WERE TAT een 38 2 24 maizes aslagen AA near 39 4 25 Indizes Tessa Teren Ldatel eeeeerer 40 4 26 Constraints auslagern B datei een 40 427 Inp ae Mmdizes umee hen Ta 41 22 Indizes pren A DIE ea 42 4 29 Ausatzoplionen bei Storage Dale un ae 43 4 29 1 DbSpac Defini
5. da innerhalb der Storage Datei der Datenbankname zur zus tzlichen Unterscheidung der Tabellen und Indexeintr ge verwendet wird Sollte der Dateiname bereits existieren so aktualisiert ifddt lediglich die Storage Datei Die alte Storage Datei wird dann im gleichen Pfadnamen mit der Endung bak gespeichert Da Sie oftmals bei der ersten Erstellung der Storage Datei kein Schema ben tigen sollten 4 Bedienungsanleitung 23 iidsp ifddt Benutzerhandbuch Sie die Ausgabe von ifddt in den Papierkorb umlenken Verwenden Sie bei der ersten Erstellung der Storage Datei auf keinen Fall die Option N sofern Sie beabsichtigen die Storage Datei anschlie end zu ndern Es w rden unn tigerweise alle Tabellen entladen werden ifddt d stores7 S munich_shm ddt gt dev null Bei der Erstellung der Storage Datei werden alle server spezifischen Eigenschaften aller Tabellen beschrieben Die Spalte die das monatliche Wachstum der Tabellen enth lt wird bei der Generierung mit dem Wert O vorbelegt Existierte die Storage Datei bereits und enthielt diese Datei nur Eintr ge anderer Datenbanken so bleiben die Eintr ge der anderen Datenbanken ebenso wie eventuell vorgenommene Kommentare von der Erstellung unber hrt 4 7 Extent Multiplikator festlegen e E factor Sofern Sie entweder die Option s oder die Option S Storage Datei nutzen k nnen Sie die aktuellen Extent Gr en f r alle Tabellen pauschal mit einem Extent Multiplikator multip
6. fen Sie diese Stellen 4 16 Tabellen selektieren t Die Option t tabellenmuster dient dazu nur bestimmte Tabellen aus dem Datenbankschema zu bernehmen Alternativ k nnen Sie durch die Option t tabellenmuster auch die Negation der Option t tabellenmuster erreichen Das Tabellenmuster erlaubt alle Muster welche Sie auch beim SQL Vergleich mittels MATCHES verwenden k nnen Sofern Sie beide Varianten kombinieren werden alle unter t genannten Tabellen kopiert mit Ausnahme derer welche dem Muster von t entsprechen Die gew nschten Tabellen k nnen Sie in der Kommandozeile unmittelbar hinter der Option t angeben M chten Sie mehrere Tabellen entladen so k nnen Sie die Option t tabelle auch mehrfach nennen Die Option t bzw t zum Entladen einzelner Tabellen k nnen Sie einerseits dazu benutzen um bestimmte Tabellen in eine Datenbank neu aufzunehmen oder aber um bestehende Tabellen einer Datenbank durch eine neuere Version zu ersetzen Beim Ersetzen wird es erforderlich die bestehende Tabelle zuvor aus der Datenbank zu entfernen werden die Tabellen nur neu hinzugef gt so sind keine weiteren Schritte als die Tabellenanlage erforderlich Siehe mehr hierzu unter Option r bzw R 4 16 1 Tabellenrechte nicht unterdr cken p all Beachten Sie beim Entladen einzelner Tabellen dass im Gegensatz zum Entladen ganzer Datenbanken weder die tabellenspezifischen Benutzerrechte noch die Role Definitionen ausgegeben werden Sie m
7. ssel eine 4 wenn es sich um einen eindeutigen Schl ssel und eine 2 wenn es sich um einen Prim rschl ssel handelt Die vierte Spalte enth lt den Eigent mernamen des Constraints auf den referenziert wird und die f nfte Spalte den referenzierten Constraintnamen In der sechsten Spalte steht der Einget mername des aktuellen Constraints gefolgt vom Constraintnamen in der siebten Spalte Diese beiden Ausgaben erscheinen jedoch nur dann wenn es sich um einen expliziten Constraintnamen handelt d h wenn der Administrator einen expliziten Constraintnamen definiert hatte Hinter der siebten Spalte folgen die einzelnen Spaltennamen in der Reihenfolge der Indexanlage Bei der Wiederanlage werden dann alle Constraints mittels des impliziten ifddt Werkzeugs ifcons angelegt Dabei werden alle in der Datei genannten Foreign Key Constraints f r deren Spalten bereits ein entsprechender Index existiert ad hoc angelegt ohne Pr fung ob die Fremdschl sselbeziehungen erf llt sind Wir weisen vorsorglich darauf hin dass auf diese Weise Inkonsistenen auftreten k nnen sofern der Kopiervorgang nicht erfolgreich abgeschlossen wurde 4 27 Implizite Indizes umgehen G Haben Sie bislang lediglich Primary und Foreign Key Definitionen abgesetzt nicht aber auf den Spalten vorab Indizes definiert so hat der Datenbankserver implizite Indizes erzeugt Implizite Indizes unterscheiden sich von anderen Indizes vor allem darin dass man sie nicht mit einem In
8. ssen ifddt mit Hilfe der abschlie enden Option p all dazu anweisen die Rechte auszugeben Mit dieser Option werden jedoch auch die Role Definitionen ausgegeben was auf der sp teren Ziel Datenbank zu einem Fehler f hren w rde sofern dort die Role Definitionen bereits existieren Bitte beachten Sie dass die 34 4 Bedienungsanleitung ifddt Benutzerhandbuch iidsp Option p all innerhalb der Kommandozeile stellungsorientiert ist Nennen Sie diese Option stets am Ende der Kommandozeile 4 16 2 Metazeichen in Tabellennamen M chten Sie mehrere Tabellen entladen deren Namen gleiche Bestandteile aufweisen so ist es auch m glich die gleichen Teile zu nennen und f r die ungleichen Teile Metazeichen anzugeben Ein Stern steht dabei f r beliebig viele beliebige Zeichen ein Fragezeichen steht f r genau ein beliebiges Zeichen Metazeichen k nnen Sie an jeder beliebigen Stelle des Tabellennamens und in beliebiger Kombination einsetzen Sorgen Sie daf r dass die genannten Metazeichen nicht von Ihrer Shell interpretiert werden Setzen Sie daher den Tabellennamen innerhalb von Anf hrungszeichen in Apostroph Zeichen oder entwerten Sie die Bedeutung des Meta Zeichens indem Sie dem Metazeichen einen Schr gstrich voranstellen ifddt d sysmaster t arc_ N arc exp Dieser Befehl weist ifddt an nur die Tabellen der sysmaster Datenbank in das Verzeichnis arc exp zu entladen deren Tabellenname mit den Buchstaben arc_ beg
9. Befehle ebenso ausgibt wie die Low Befehle 4 34 Cache Optimierung O Die Option O veranlasst ifddt dazu die Befehle zur Indexanlage unmittelbar hinter evtl Ladebefehle zu setzen und die zugeh rigen Update Statistics Anweisungen unmittelbar hinter die letzte Indexanlage zu platzieren Auf diese Weise kann bei Tabellen deren Datenpages und Indexpages vollst ndig in den Cache Buffer passen auf ein erneutes Lesen der Tabellendaten verzichtet werden Eine zeitliche Einsparung ist folglich dann zu erwarten wenn es sich berwiegend um Tabellen mittlerer Gr e handelt 4 35 Datenbanksperre beim Entladen vermeiden I Soll w hrend eines Entladevorgangs keine exklusive Sperre auf der Quelldatenbank gesetzt werden so setzen Sie die Option l ein Beachten Sie dabei jedoch dass bedingt durch die fehlende Sperre inkonsistente Daten entladen werden k nnen Zu Inkonsistenzen kommt es dann wenn w hrend des Entladevorgangs Datens tze in einer noch nicht vollst ndig entladenen Tabelle eingetragen gel scht oder modifiziert werden 46 4 Bedienungsanleitung ifddt Benutzerhandbuch iidsp 4 36 High Performance Loader einsetzen H datenbank Zum Laden ihrer unload Dateien k nnen Sie alternativ zur locad Anweisung des Programms dbaccess auch den Informix High Performance Loader einsetzen Mittels des High Performance Loaders werden Tabellen mit vielen komplexen Datens tzen deutlich schneller in die Zieltabelle bertragen Beim
10. Benutzerhandbuch iidsp 4 42 Ausgabe f r Oracle erzeugen g ora Beabsichtigen Sie Ihre Informix Datenbank in eine Oracle Datenbank zu berf hren so k nnen Sie mittels der Option g ora eine SQL Datei f r das Oracle Kommando sqlplus erzeugen Sofern Sie nicht nur das Schema sondern auch die Daten in die Oracle Datenbank bertragen m chten setzen Sie die Option g ora in Kombination mit der Option N ein Neben den Entladedateien werden dabei eine Reihe von Kontrolldateien f r den Oracle SOL Loader erstellt Der Ladevorgang wird sp ter analog zu der Informix Variante mit dem Aufruf des Kommandos sqlplus zentral gesteuert Innerhalb der generierten SQL Datei befindet sich der allgemein g ltige Aufruf des HOST Kommandos mit dem die Daten auf allen g ngigen Plattformen geladen werden k nnen Vor dem Aufruf des ifddt k nnen Sie zur Steuerung des Oracle Loaders diverse Umgebungsvariablen setzen Umgebungsvariable ORA_USER Benutzername in der Oracle Datenbank ORA_PASSWD Kennwort des Benutzers in der Oracle Datenbank ORA_IFDDTPATH C inputpath Pfadname f r die Entladedateien im Zielsystem ORA_LOGPATH C logs Pfadname der Protokolldateien des SQL Loaders Es wird dringend empfohlen die Umgebungsvariablen ORA_IFDDTPATH sowie ORA_LOGPATH zu setzen da anderenfalls der SQL Loader die Protokolldateien im Oracle Installationsverzeichnis anlegt und die Entladedateien ebenfalls in diesem Verzeichnis sucht 4 43 inf_storag
11. Fragmentierungs Ausdrucks fehlt in den DbSpaces sp und sp2 angelegt Als Berechnungsgrundlage dient dabei die angegebene Gr e der DbSpaces Dabei versucht ifddt bei der Tabellenanlage daf r zu sorgen dass abschlie end alle DbSpaces gleichm ig viel freien Platz aufweisen Durch eine geschickte Angabe der Gr en k nnen Sie selbst daf r sorgen dass ein DbSpace st rker oder weniger stark belegt wird Sollten namensgleiche DbSpaces im Ausgangs System vorhanden sein so wirkt die Option in der Kommandozeile st rker 4 Bedienungsanleitung 43 iidsp ifddt Benutzerhandbuch 4 29 2 Extent Berechnung anhand monatlicher Wachstumswerte M month In der vorletzten Spalte der Storage Datei k nnen Sie die eintragen wieviele Datens tze in der jeweiligen Tabelle je Monat hinzukommen Anhand dieses Wertes und den in der Kommandozeile angegebenen Monaten errechnet ifddt die f r diese Tabelle ma geblichen Extent Gr en Diese Extent Werte werden sodann in der Storage Datei gespeichert Vorsicht ist daher bei mehrmaligem Aufruf vom ifddt geboten da sich mit jedem Aufruf die Basisgr e der Extents vergr ert 4 30 DbSpace Mapping m Mittels der Option m weisen Sie ifddt dazu an anstelle der realen DbSpace Namen beliebige andere DbSpace Namen zu verwenden Hierzu m ssen Sie in der Datenbank sysmaster eine Tabelle namens dbsmap anlegen die aus den Spalten newdbs und olddbs besteht Die Tabelle muss unter der Benutzerkennung info
12. RETURN Taste ab Daraufhin erscheint eine kurze Meldung in der Sie die Lizenzbedingungen mit Hilfe der RETURN Taste best tigen m ssen Im Anschlu daran werden die verschiedenen Unterverzeichnisse angezeigt deren Rechte auf die Benutzerkennung informix gesetzt werden Zudem werden die Zugriffsbeschr nkungen der Programme aufgehoben Sobald die Meldung Installation complete auf Ihrem Bildschirm erscheint ist die Installationsroutine abgeschlossen Testen Sie jetzt das Programm indem Sie den Pfad um das Produktverzeichnis IIDSPDIR bin erweitern und ifddt zum ersten Mal starten IIDSPDIR opt informix iidsp PATH PATH IIDSPDIR bin ifddt V 1 5 Demo Versionen Demo Versionen haben ausgehend vom Zeitpunkt der Installation eine 30 t gige G ltigkeit Demo Versionen sind mit dem vollen Leistungsumfang ausgestattet d rfen aber nicht zu kommerziellen Zwecken eingesetzt werden Nach Ablauf der 30 Tage Frist erlischt automatisch der Lizenzvertrag und die Software darf nicht mehr angewendet werden 1 Installationsanleitung 3 iidsp ifddt Benutzerhandbuch 4 1 Installationsanleitung 2 Funktionsweise ifddt ist ein Programm mit dessen Hilfe Datenbanken oder Tabellen kopiert oder entladen werden k nnen und eignet sich somit optimal zur Reorganisation sowie zur Erstellung von Kopien von Datenbanken oder Tabellen Ein wesentliches Merkmal ist dass ifddt nur die zum Kopieren oder Laden notwendigen Befehle erzeugt diese aber n
13. Tabellen Sofern Sie die Parallel Optionen g anwenden so werden die generierten Stored Procedure Namen um die Endung der jeweiligen Prozessnummer erweitert um Konflikte bei den Namen der Stored Procedures zu vermeiden 4 13 Tabellen reorganisieren n Sofern Sie nach der Option n keinen Datenbanknamen angegeben und zudem die Option t einsetzen so geht ifddt davon aus dass einzelne Tabellen innerhalb einer Datenbank reorganisiert werden sollen In der Folge werden die SQL Befehle analog zur Datenbankkopie generiert zus tzlich wird dabei aber ber cksichtigt dass die alten Tabellen abschliessend gel scht werden Es erfolgt somit eine Reorganisation in neue Tabellen mit finalem L schen der Quelltabellen Die Anwendung der Option n ohne Angabe der Option t ist unzul ssig 4 14 Umgebungsvariable INFORMIXSERVER setzen Vor dem Erstellen des SQL Skripts sollten Sie bedenken dass die Daten sp ter seitens des Ziel Systems vom Ausgangs System angefordert werden Das hei t dass Sie auf jeden Fall vor dem Aufruf von ifddt die Umgebungsvariable INFORMIXSERVER auf den Server Namen des Servers setzen m ssen der die Ausgangs Datenbank enth lt Im ersten nachfolgenden Beispiel gehen wir davon aus dass die Datenbank namens stores7 vom Datenbank Server berlin_tli des Rechners berlin auf den Datenbank Server muc_soc 32 4 Bedienungsanleitung ifddt Benutzerhandbuch iidsp des Rechners munich kopiert werden soll Zur Erstellung des A
14. Werden die Indizes unmittelbar nach dem Laden der Daten angelegt so verz gert sich verst ndlicherweise das Laden der n chsten Tabelle Da in der Regel die Quell Datenbank w hrend der Daten bernahme gesperrt ist bleibt die Quell Datenbank nun bis zur bernahme der letzten Tabelle gesperrt Positiv wirkt sich jedoch auf die Indexanlage aus dass die Tabellendaten sich nach dem Laden im Cache befinden W rden die Indizes separat oder am Ende des Anweisungsskripts erst generiert so K nnen zwar die Tabellendaten schneller kopiert werden aber die Indexanlage im Zielsystem erfolgt erst anschliessend und dabei werden alle geladenen Tabellendaten erneut gelesen Somit wird die gesamte Erstellung der Datenkopie l nger dauern Wird neben der Option O die Option i in der Kommandozeile genannt so werden nur die FOREIGN KEY Constraints am Ende des Skripts zusammen erstellt Die brigen Indizes w rden fr hzeitig d h nach dem Laden der jeweiligen Tabelle generiert werden Damit auch FOREIGN KEY Constraints von dieser optimierten Indexanlage profitieren empfehlen wir generell keine impliziten FOREIGN KEY Indizes anzulegen Besser ist die explizite Anlage eines Indexes auf den referenzierenden Spalten und die anschlie ende Anlage des Constraints Seit der Version ifddt 3 x werden Cluster Indexes nicht mehr fr hzeitig nach der Tabellenanlage erstellt sondern ebenfalls erst nach dem Laden der Daten Da jedoch die Daten bereits sortiert geladen w
15. Zeichen eingeleitet und gelten bis zum Zeilenende Soll eine Umwandlung nur f r bestimmte Spalten gelten so m ssen Sie die Spaltennamen mit f hrendem Tabellennamen jeweils in eine gesonderte Zeile schreiben die Sie mit einem Doppelpunkt abschliessen Die Umwandlung wirkt sich nur beim Entladen der Daten aus d h auf diese Weise k nnen Zeichens tze beim Entladen bereits angepasst werden Soll eine Spalte zudem auf den Datentyp NCHAR bzw NVARCHAR ge ndert werden so f gen Sie hinter dem Doppelpunkt des Spaltennamens ein Plus Zeichen an Der neue Datentyp wird in diesem Fall in der SQL Datei angepasst Konvertierungsdatei Allgemein soll gelten va gt FAT 0x62 gt 0x42 Nur f r die nachfolgenden Tabellen gilt adressen ad_name adressen ad_vorname t orte or_name gt OxFC TO gt OxFD 4 10 Verz gerte Indexanlage i und O Ohne Angabe der Option i werden die Indizes unmittelbar nach der Tabellendefinition ausgegeben Die sofortige Anlage der Indizes behindert jedoch das Laden von Tabellen weshalb Sie im Zusammenhang mit dem Kopieren aber auch beim Entladen Laden der Daten die Indexanlage verz gern sollten Die verz gerte Indexanlage kann nun entweder g nzlich separat i datei unmittelbar nach der jeweiligen tabellenspezifischen Daten bernahme i und O oder am Ende aller Daten bernahmen i geschehen 4 Bedienungsanleitung 29 iidsp ifddt Benutzerhandbuch
16. die Umgebungsvariable DDTCOMP ein Beide Programme m ssen Filterprogramme sein d h sie m ssen ohne Angabe eines Dateinamens von der Standardeingabe lesen und auf die Standardausgabe schreiben DDTCOMP bzip2 bunzip2 export DDTCOMP ifddt d checkdata N neu exp H neu c C s i Z level 0 3 Umgebungsvariablen 15 iidsp ifddt Benutzerhandbuch 3 5 MINHPLROWS Beim Entladen mittels High Performance Loader werden Tabellen mit weniger als 10 000 Datens tzen mittels dem dbaccess Befehl load geladen Der Aufwand f r den Aufruf des High Performance Loaders ist in diesen F llen oftmals zu gro Sie k nnen diesen Schwellwert mittels der Umgebungsvariable MINHPLROWVS nach unten oder oben setzen MIN_HPL_ROWS 80000 export MIN_HPL_ROWS ifddt d checkdata N neu exp H neu c C s i 16 3 Umgebungsvariablen ifddt Benutzerhandbuch iidsp 3 6 MAX_FILE SIZE Beim Entladen von Daten sieht ifddt eine maximale Dateigr e von 2GB vor sofern die Daten in regul re Dateien geschrieben werden Wenn Sie gr ere Dateien w nschen und ein entsprechendes Dateisystem vorliegt so k nnen Sie die Umgebungsvariable MAX_FILE_SIZE auf einen anderen Wert setzen Der Wert mu dabei in Bytes angegeben werden Ist die zu entladende Datei gr er als MAX_FILE_SIZE so werden mehrere Entladedateien erzeugt 3 Umgebungsvariablen 17 iidsp ifddt Benutzerhandbuch 3 7 IFDDT_CONN_RETRY und IFDDT_CONN_TIME Diese Umgebungsvariablen beeinf
17. die Befehle zur Anlage der Trigger Views und Synonyme fehlschlagen Um diesen Problemen vorzubeugen erlaubt ifddt mit Hilfe der Option b dateiname die Anlage aller Stored Procedures Views Trigger und Synonyme auszulagern so dass diese erst sp ter in einem separaten dbaccess Lauf erzeugt werden Die Auslagerung erfolgt in eine eigenst ndige Datei die Sie anschliessend mit einem gew hnlichen Editor manipulieren k nnen Diese Option kann nicht beim Entladen mittels der Option N angewendet werden 4 23 Schnelle Indexanlage i Grunds tzlich ist es bei Tabellen empfehlenswert die Indizes erst nach dem Laden der Daten 38 4 Bedienungsanleitung ifddt Benutzerhandbuch iidsp anzulegen Dies trifft sowohl f r explizite Indizes zu die mittels der CREATE INDEX Anweisung erzeugt werden als auch f r implizite Indizes die mit Unique Primary und Foreign Key Constraint Definitionen einher gehen Durch Angabe der Option i veranlassen Sie ifddt dazu die Befehle zur Indexanlage an das Ende der Ausgabedatei zu legen Dabei werden auch alle impliziten Indizes die durch Constraint Definitionen entstehen an das Ende verlagert Die Stelle innerhalb der Ausgabedatei k nnen Sie leicht auffinden sie wird mit dem Kommentar Index Creation gekennzeichnet Unmittelbar danach erfolgt die SQOL Anweisung set pdqpriority 95 Diese sorgt daf r dass auf Maschinen mit hinreichend gro em Speicher die PDQ Optionen des Datenbankserver
18. entfernen wird diese Tabelle erneut entladen Die Option w ist daher sowohl sinnvoll wenn Daten einer Tabelle unvollst ndig entladen wurden oder aber wenn das Dateisystem zu klein definiert war Beachten Sie dass bei dieser Option das entscheidende Kriterium f r das erneute Entladen die Existenz der Entladedatei ist und nicht die Anzahl der darin enthaltenen Datens tze 26 4 Bedienungsanleitung ifddt Benutzerhandbuch iidsp 4 9 2 Entladedateien komprimieren Z level Mittels der Option Z level k nnen Sie die Entladedateien direkt koprimieren Je nach Kompression k nnen die Daten beim Entladen auf 10 der Ausgangsgr e reduziert werden und lassen sich somit leichter in Dateisystemen speichern Des weiteren erzielen Sie hierdurch den Vorteil dass diese Entladedateien sich schneller ber das Netzwerk bertragen lassen Der level hinter der Option Z legt das anzuwendende Kompressionsverfahren fest Folgende Einstellungen sind standardm ig vorgesehen 1 Anwendung von gzip gzip d 2 Anwendung von compress uncompress 3 Anwendung von zip unzip 0 Anwendung der Programme welche Sie in DDTCOMP definieren DDTCOMP muss mit dem Kompressions und Dekompressionsprogramm belegt werden welche durch ein Semikolon voneinander getrennt sind z B DDTCOMP gzip gzip d W hrend des Entladens werden die Kompressionsprogramme direkt seitens ifddt gestartet d h die entstehenden Daten werden den Kompressionsprogrammen via Pipe ber
19. ermittelt ifddt nicht nur die Gr en der Benutzertabellen sondern korrigiert auch die Gr en der Systemtabellen Da sich jedoch die First Extent Gr e der Systemtabellen nicht beeinflussen l sst korrigiert ifddt deren Next Extent Gr en so dass die Systemtabellen nach der Anlage aller Tabellen nur zwei Extents aufweisen Die Option s veranlasst ifddt auch dazu die Tabellen in absteigender Reihenfolge ihrer Gr e auszugeben Ohne diese Option werden die Tabellen entsprechend des Zeitpunktes ihrer Anlage ausgegeben 4 3 Gr eninformationen auswerten ifddt erzeugt bei Angabe der Optionen s oder S am Ende des Schemas eine Gr eninformation Diese Gr eninformation befindet sich innerhalb der Kommentarzeichen und und muss daher nicht manuell entfernt werden Die Gr eninformation zeigt Ihnen wieviel Platz f r die Tabellen innerhalb der verschiedenen DbSpaces ben tigt wird Dabei werden auch die Namen der DbSpaces ausgegeben die nicht zur Anlage der Tabellen ben tigt werden Alle Gr enangaben liegen in der Einheit Kilobyte vor Die Gr enangaben beschreiben den Platz in KB der f r die einzelnen Tabellen Fragmente ben tigt wird TableSpaces den Platz der f r die Systemkatalogtabellen ben tigt wird Dictionary und den Platz der f r die interne Verwaltung d h f r die Partition Pages Overhead ben tigt wird In der Spalte Total wird die Summe der drei Gr enangaben abgebildet Zur Kontrolle zeigt ifddt
20. generierte storage Datei k nnen Sie in einem zweiten Arbeitsschritt individuell an Ihre Bed rfnisse anpassen 2 5 Fehlerhafte storage Datei Falls ifddt innerhalb der storage Datei einen Fehler erkennt so wird die weitere Verarbeitung abgebrochen und es erscheint eine Fehlerausgabe der Form ifddt d stores7 S tmp weidi73 ddt gt dev null storage file tmp weidi73 ddt error 3 in line 2 Wird ein Fehler erkannt so erstellt ifddt weder eine neue storage Datei noch ein Schema Die negativen Fehlernummern w hrend der Fehlerpr fung der storage Datei bedeuten im einzelnen Fehler Nr Bedeuung on ietan Info fehlt 2 Funktionsweise 9 iidsp ifddt Benutzerhandbuch Der Inte Penn Name ist zu lang 23 Fehler im Fragmentausdruck 10 2 Funktionsweise 3 Umgebungsvariablen Mit Hilfe der folgenden Umgebungsvariablen l sst sich das Verhalten des ifddt beeinflussen e DDTINVIEW e DDTDEB e DDTST e DDTCOMP e MINHPLROWS e MAX_FILE_SIZE e IFDDT_CONN_RETRY e IFDDT_CONN_TIME e DBDELIMITER e DBMONEY e DELIMIDENT e ORA_IFDDTPATH e ORA_USER e ORA_PASSWD e ORA_LOGPATH e ORA_FRACTIONS e BAANFILES Die Variablen werden nachfolgend im einzelnen hinsichtlich der m glichen Werte und ihrer Bedeutung beschrieben Lesen Sie bitte jeweils im Kapitel 4 mehr zu den jeweiligen Optionen Diese Beschreibung soll lediglich eine grobe bersicht ber die verschiedenen Variablen darstellen In den nachfolgend
21. in der Spalte Free den freien Platz innerhalb des jeweiligen DbSpaces an Ist der ben tigte Platz zur Anlage der Tabellen nicht mehr frei so sollten Sie von der Durchf hrung des Schemas Abstand nehmen und erst eine Umverteilung der Tabellen z B mit Hilfe der Storage Datei vornehmen Beachten Sie bei der Gr enangabe dass es sich bei dem freien Platz um den Platz auf dem Ausgangs Server handelt Sofern Sie die Daten auf einen anderen Server bertragen m ssen Sie manuell pr fen ob dort der Platz zur Anlage der Tabellen noch frei ist Bedenken Sie dabei auch dass der ben tigte Platz gr er sein kann als hier angezeigt wenn das Ziel System gr ere Page Gr en aufweist 22 4 Bedienungsanleitung ifddt Benutzerhandbuch iidsp 4 4 Standard Constraint Namen unterdr cken c Falls Sie die Standard Constraint Namen einer Datenbank bernehmen so k nnen sp ter Probleme bei der Anlage von Constraints auftreten da sich die Standard Constraint Namen immer aus einem Buchstaben der eindeutigen Tabellennummer und der eindeutigen Constraint Nummer zusammensetzen Haben Sie in der Vergangenheit eine Tabelle gel scht so werden bei der erneuten Tabellenanlage alle nachfolgenden Tabellen eine neue kleinere eindeutige Tabellennummer aufweisen Bei bernahme der Constraint Namen bleiben aber die Tabellennummern innerhalb der Constraint Namen erhalten Neue Tabellen k nnen somit eine Tabellennummer erhalten die dann in Konflikt mit e
22. Aufruf des ifddt m ssen Sie dazu die Option H gefolgt vom Namen der Ziel Datenbank angeben Die Option H ist zur Zeit nur in Kombination mit der Option N zul ssig d h diese Eigenschaft k nnen Sie nur in Zusammenhang mit dem Entladen von Tabellen oder ganzer Datenbanken einsetzen Nach dem Entladevorgang befinden sich im Entladeverzeichnis neben den unload Dateien der Endung unl und der SQL Datei die Dateien onpload sql und einige Dateien mit dem Prefix HPLxxx lod Bevor Sie im Zielsystem den Ladevorgang einleiten m ssen Sie bei Anwendung dieser Option zun chst die High Performance Loader Datenbank anlegen Starten Sie im Zielsystem daher zun chst folgenden Befehl cd entlade verzeichnis onpload sh Dieser Befehl erzeugt die Datenbank namens ifddtpload Stellen Sie daher zuvor sicher dass Sie keine gleichnamige Datenbank im Zielsystem haben Setzen Sie nun die HPL Umgebungsvariable DBONPLOAD auf den Namen ifddtpload DBONPLOAD ifddtpload export DBONPLOAD Nun k nnen Sie den Ladevorgang wie gewohnt starten Nach dem Laden der Daten befinden sich im Verzeichnis tmp f r jede mit onpload geladene Tabelle zwei Dateien mit der Endung rej und log Pr fen Sie die log Datei hinsichtlich evtl aufgetretener Fehler Die Anwendung des HPL ist nicht grunds tzlich schneller als der herk mmliche load Befehl des Programms dbaccess Lediglich bei gro en Tabellen kann man von der Anwendung des HPL profitieren Aus diesem Grund w
23. Befehl solange bis alle ihre Tabellennamen auf der Ausgabe erscheinen Anschliessend k nnen Sie ifddt erneut wie gew nscht starten Pr fen Sie aber die Ausgabe nochmals hinsichtlich der Meldung no extent size 6 Bekannte Bugs 57 iidsp 58 ifddt Benutzerhandbuch 6 Bekannte Bugs
24. TE TABLE Befehl auszugeben Sollten Sie jedoch nicht sicher sein ob die Tabellen tats chlich existieren so verwenden Sie anstelle der Option r die Option R Diese Option ist zwar langsamer als die Option r sie pr ft jedoch vor dem DROP TABLE Befehl ob die entsprechende Tabelle vorhanden ist und vermeidet auf diese Weise Fehlermeldungen in der Ausgabe 4 16 5 Stored Procedures ausgeben f Werden einzelne Tabellen kopiert oder entladen so fehlen im Ausgabeskript alle Stored Procedures da es keine direkte Abh ngigkeit zwischen Stored Procedures und den darin angesprochenen Tabellen gibt Sollen diese ebenfalls mit ausgegeben werden m ssen Sie in der Kommandozeile die Option f angeben Diese Option bewirkt zugleich dass die Stored Procedure spezifischen Rechte mit ausgegeben werden Hierzu m ssten Sie ebenfalls wieder die Option p all am Ende der Kommandozeile angeben 4 17 Tabellen kopieren Das Kopieren einer oder mehrerer Tabellen unterscheidet sich vom Entladen der Tabellen dadurch dass die Tabellendaten nicht in einzelne unload Dateien entladen sondern unmittelbar nach der Anlage direkt in die neuen Tabellen bernommen werden Beim Kopieren einzelner Tabellen m ssen die Transaktionsmodi beider beteiligten Datenbanken analog zum Kopieren von Datenbanken bereinstimmen Im brigen k nnen Sie alle im Abschnitt Datenbanken kopieren genannten Optionen auch beim Kopieren von Tabellen verwenden 4 18 Transformatio
25. UMCPUVPS der Konfigurationsdatei des Zielservers entnehmen Standardm ig wird ifddt bei der Parallelisierung die PDQ Optionen des Datenbankservers vollends ausnutzen Bei vielen parallelen Prozessen hat dies aber zur Folge dass jeder einzelne Ladeprozess relativ wenig Speicher f r das Erstellen von Indizes erh lt Gerade wenn gro e Tabellen geladen werden sollen w rde sich diese Einstellung negativ auf die Geschwindigkeit der Indexerzeugung auswirken Aus diesem Grund sollten Sie in diesem Fall die PDQ Priorit t f r jeden Ladeprozess erh hen 4 41 PDQ Priorit t festlegen g pdq Die Option g pdq_pdqwert legt die PDQ Priorit t fest Jeder Ladeprozess fordert dabei pdqwert der PDQ Ressourcen an und das hat zur Folge dass bei der Indexanlage f r jeden Ladeprozess pdqwert der Ressourcen zur Verf gung stehen Ohne die Option g pdq ergibt sich die Priorit t aus 100 Anzahl der Ladeprozesse Bei vier Prozessen w ren das folglich 100 4 25 H tten Sie als maximalen Speicher f r die Sortierung 200MB DS_TOTAL_MEMORY 200000 eingetragen so st nde f r die Sortierung w hrend der Indexanlage jedem Prozess nur 50MB zur Verf gung Haben Sie aber Tabellen deren Indexdaten die SOMB bersteigen so m sste zur Indexanlage auf tempor re Dateien ausgewichen werden W rden Sie die Option g pdq 50 angeben so st nden jedem Ladeprozess 50 der Ressourcen und somit 100MB zur Verf gung 50 4 Bedienungsanleitung ifddt
26. an Ihren Betriebssystemhersteller und bitten diesen die Ursache f r die langsame bertragung auszumachen und zu beseitigen Stellen Sie bei dem Test sicher dass die verwendete Ger tedatei hinreichend gro ist und ver ndern Sie auch nicht den Test indem Sie die Datenmenge reduzieren Kleinere Datenmengen k nnten ggf in einem kleinen Cache Modul untergebracht werden ein solcher Test w rde dann keinen R ckschlu auf die tats chliche Dauer eines Kopiervorgangs Ihrer Datenbank zulassen 5 Administrative Anforderungen 55 iidsp 56 ifddt Benutzerhandbuch 5 Administrative Anforderungen 6 Bekannte Bugs Im Zusammenhang mit der Extentgr en Ermittung seitens des ifddt treten auf verschiedenen Plattformen insbesondere auf HP UX und UnixWare Probleme auf wenn es sich um den ersten Zugriff auf die sysmaster Datenbank handelt Innerhalb der generierten SQL Skripts erscheint am Ende der Tabellendefinitionen dann stets der Hinweis no extent size for partnum 0x00200026 1 Dabei handelt es sich nicht um ein Problem seitens ifddt sondern um ein Problem im Zusammenhang mit dem IBM Informix Dynamic Server Sie k nnen dieses Problem umgehen indem Sie folgenden Befehl auf der Kommandozeile absetzen dbaccess sysmaster lt lt eof select tabname l1 18 nrows from systabnames a sysptnhdr b where a partnum b partnum and dbsname dbname eof Ersetzen Sie dabei dbname durch Ihren Datenbanknamen und starten Sie diesen
27. andardm ig entladen sondern entsprechend den hier definierten Vorgaben Alle brigen Tabellen w rden regul r entladen ifddt d st7c F ste etl t buchung t deltasec c C s N ste exp 4 19 Allgemeine Optionen Neben den bereits beschriebenen Optionen existieren weitere n tzliche Optionen die Sie bei Bedarf einsetzen k nnen 4 20 Benutzernamen unterdr cken a Befindet man sich nicht gerade in einer ANSI Datenbank so l sst man in der Regel bei der Anlage einer Tabelle den Namen des Tabelleneigent mers weg da man selbst der Eigent mer ist und nat rlich auch seitens der Datenbank wird Bei der Generierung des Datenbankschemas jedoch wird der Eigent mer einer jeden Tabelle eines jeden Indexes sowie einer jeden Stored Procedure stets mit ausgegeben Sofern Sie beabsichtigen das Schema auf eine andere Maschine zu bertragen auf der die Benutzer des lokalen Systems nicht vorhanden sind so k nnte die bernahme der Rechte ernsthafte Probleme auf der Zielmaschine verursachen Um dieses Problem zu vermeiden k nnen Sie die Ausgabe der Benutzernamen bei der Anlage von Objekten unterdr cken indem Sie auf der Kommandozeile die Option a absetzen ifddt wird bei der Angabe dieser Option grunds tzlich alle Benutzernamen unterdr cken Somit entf llt auch die Angabe der entsprechenden Benutzerrechte Lediglich der Benutzername informix und public werden bernommen und somit auch deren 4 Bedienungsanleitung 37
28. dexnamen ansprechen kann Die Indexnamen beginnen mit einem Leerzeichen und eben dies sorgt daf r dass ein solcher Index nicht als Clustered Index angelegt oder in einen anderen DbSpace verschoben werden kann Auch das L schen eines solchen Indexes ist ausgeschlossen denn er wird implizit mit dem Constraint gel scht Hatte man zuvor f r einen Constraint einen Index und hat man diesen Index gel scht so entsteht ebenfalls ein impliziter Index der explizite wird sozusagen nur umbenannt 4 Bedienungsanleitung 41 iidsp ifddt Benutzerhandbuch F r die Reorganisation ist der gr te Nachteil aber wohl der dass die Foreign Key Constraints auch nach dem Kopieren der Daten vollst ndig neu angelegt werden m ssen Vor allem wenn Sie die Constraints auslagern empfiehlt es sich implizite Indizes gleichzeitig zu entfernen Setzen Sie auf der Kommandozeile die Option G ein so werden alle impliziten Indexnamen in explizite Indexnamen berf hrt indem das f hrende Leerzeichen der Indizes durch den Buchstaben X ersetzt wird Besonders profitieren Sie dann wenn Sie zeitleich die Option B datei einsetzen 4 28 Indizes pr fen A datei Bisweilen ist es sinnvoll bestehende Datenbanken hinsichtlich des Optimiererverhaltens zu berpr fen Dies gilt besonders f r Indizes und der Frage ob sich der Optimierer in den verschiedenen Einstellungen OPTCOMPIND 0 1 2 f r die Verwendung des Indexes entscheidet Mittels der Option A k nnen Sie ei
29. e Datei f r BaaN Umgebungen erzeugen Arbeiten Sie in einer Baan Umgebung so sollten Sie stets die Steuerdatei namens inf_storage die sich im Verzeichnis BSE lib informix befindet pflegen Einige Werkzeuge der Baan Umgebung ben tigen diese Datei wenn Sie beispielsweise bestehende Tabellen erweitern reorganisieren oder von einem anderen System Daten bernehmen In einer Baan Umgebung k nnen Sie stets f r jede einzelne Tabelle beschreiben in welchem DbSpace die Tabelle liegen soll und mit welchen Extent Gr en die Tabelle ausgestattet ist Haben Sie Ihre Datenbank mit Hilfe von ifddt reorganisiert so erstellt ifddt auch optional eine Musterdatei f r die entsprechenden Tabellen die Sie in Ihre bestehende inf_storage Datei bernehmen k nnen Setzen Sie hierzu vor dem Aufruf von ifddt die Umgebungsvariable namens BAANFILES 4 Bedienungsanleitung 51 iidsp ifddt Benutzerhandbuch auf die Mindestgr e einer Tabelle in KiloByte ab der ifddt die entsprechende Tabelle in der generierten infstorage Datei auflisten soll Ihr Baan Support empfiehlt Ihnen die Nutzung mehrerer inf_storage Dateien eine f r den Normal Betrieb sowie eine inf_storage Datei f r administrative Zwecke z B f r das Kopieren von Companies oder zum Erweitern von Tabellen Indem Sie die Mindestgr e hochsetzen k nnen Sie eine kleine infstorage Datei erzeugen die nur die bedeutenden Tabellen Definitionen enth lt Setzen Sie die Mindestgr e auf den kleinst
30. elegt werden um die eine Tabelle durchschnittlich je Monat anw chst Diese Information wird seitens ifddt ausgewertet wenn Sie in der Kommandozeile die Option M monate spezifizieren Aufgrund der jeweiligen Satzbreite der Tabellen ermittelt ifddt die zus tzliche Gr e der Tabellen nach Ablauf der in der Kommandozeile festgelegten Monate wobei von einem linearen Wachstum ausgegangen wird Die in der firstextent Spalte vereinbarte Gr e wird dann um den Wachstumswert erh ht Die space Spalte dient dazu einen Ziel DbSpace f r eine Tabelle zu definieren Sofern Sie in dieser Spalte einen DbSpace Namen eintragen wird die Tabelle bzw der Index in diesem DbSpace angelegt Bei dem DbSpace Namen mu es sich nicht um einen real existierenden DbSpace im aktuellen Server System handeln entscheidend ist dass der DbSpace in dem Zielsystem existiert in dem das erzeugte SQOL Schema angewendet wird Neben einem DbSpace Namen kann die DbSpace Spalte auch einen Fragmentierungsausdruck enthalten jedoch mu der vollst ndige Ausdruck in einer Zeile untergebracht werden Die bei einer Tabellendefinition vorgenommenen Extent Angaben beziehen sich in diesem Fall auf jedes Daten Fragment Bleibt die space Spalte f r eine Tabelle leer so ermittelt ifddt einen passenden DbSpace f r diese Tabelle Wird zus tzlich die Option D dbspacelist in der Kommandozeile angegeben so verwendet ifddt einen DbSpace aus der spezifizierten DbSpace Definition w
31. em separaten DbSpace gespeichert wird Die Angaben der storage Datei umfassen neben der Datenbank und der Tabellen bzw Indexangabe folgende Direktiven e die Sperrebene Page oder Row Lock e den Ziel DbSpace f r eine Tabelle Index bzw den Fragmentierungsausdruck e die Anzahl der Datens tze um die eine Tabelle monatlich w chst bzw der Index F llfaktor 6 2 Funktionsweise ifddt Benutzerhandbuch iidsp e die First und Next Extent Gr en e die Angabe ob eine Tabelle resistent im Cache verweilen soll Alle Eintr ge innerhalb der storage Datei m ssen Sie durch einen Doppelpunkt voneinander trennen Die einzelnen Tabellen bzw Indexangaben beginnen stets auf einer neuen Zeile Jeder neue Eintrag in der storage Datei beginnt mit dem Namen der Datenbank gefolgt von einem Doppelpunkt und dem Namen der Tabelle bzw dem Namen des Indexes Handelt es sich um eine Tabellenbeschreibung so mu nach dem Tabellennamen der Eintrag T folgen handelt es sich um einen Index so mu der Eintrag I folgen Bei Indexbeschreibungen sind nur zwei Direktiven m glich Diese befinden sich in der achten und neunten Spalte und beschreiben den F llfaktor bei der Index Anlage sowie den Ziel DbSpace bzw den Fragmentierungsausdruck Der vollst ndige Aufbau bei einer Tabellen Direktive sieht folgenderma en aus datenbank Diese Spalte enth lt den Namen der Datenbank f r die der nachfolgende Eintrag gilt tabelle In dieser Spal
32. en Befehlen zur Anlage und den Befehlen zum Laden der Tabellen befinden sich anschlie end in der Datei tmp st exp stores7 sql auch alle weiteren Befehle zur Anlage der Views Trigger Rechte Synonyme Constraints Stored Procedures und Indizes Um eventuellen Mi verst ndnissen vorzubeugen sei an dieser Stelle darauf hingewiesen dass der Aufbau und Inhalt des erzeugten Verzeichnisses inkompatibel zu dem vom Informix Kommando dbexport erzeugten Verzeichnis ist Es ist somit nicht m glich mittels dbimport die Datenbank wieder zu laden Die generierte Anweisungsdatei enth lt neben reinen SQL Anweisungen auch Lade Anweisungen die ausschlie lich vom Informix Programm dbaccess verstanden werden 4 9 4 Alphanumerische Werte konvertieren k datei Mittels der Option k k nnen Sie f r alle oder nur f r bestimmte Spalten die darin enthaltenen Zeichen konvertieren Dazu ben tigen Sie eine Konvertierungsdatei in der die Regeln f r die Konvertierung festgelegt werden Eine Konvertierungsdatei besteht aus den umzusetzenden Zeichen wobei stets in einer Zeile das umzusetzende Zeichen gefolgt von der Zeichenfolge Minus und Gr er gt und dem Zielzeichen besteht Wird vor den Umwandlungsregeln keine Tabellenspalte genannt so gelten diese Umwandlungsregeln f r alle alphanumerischen Spalten ausgenommen sind 28 4 Bedienungsanleitung ifddt Benutzerhandbuch iidsp Spalten vom Datentyp TEXT Kommentare werden mit dem Raute
33. en Beispielen beschreiben wir das Setzen der Umgebungsvariablen f r die Bourne Shell oder ihrer Derivate wie Korn Shell oder der bash Sofern Sie eine andere Shell zur Kommandoeingabe nutzen setzen Sie die Umgebungsvariablen dort bitte entsprechend 3 Umgebungsvariablen 11 iidsp ifddt Benutzerhandbuch 3 1 DDTINVIEW Diese Umgebungsvariable aktiviert eine spezielle Funktion bei der Views analysiert werden Wird die Umgebungsvariable auf den Wert 1 gesetzt so werden lediglich Eigent mernamen innerhalb des Views in der Kombination mit der Option a entfernt Wird die Umgebungsvariable auf den Wert 2 gesetzt so werden die Views hinsichtlich externer Tabellenreferenzen aufgl st Anstatt die Views regul r zu bernehmen werden externe Tabellenreferenzen wie interne Tabellen behandelt d h die Daten der Tabelle werden je nach Option entweder mit kopiert oder ent und geladen Entsprechend findet sich dann auch im Schema ein entsprechender Befehl zur Tabellenanlage DDTINVIEW 2 export DDTINVIEW ifddt d checkdata c C s i z y checkrows dat n newdwh R g 8 gt newdwh sql 12 3 Umgebungsvariablen ifddt Benutzerhandbuch iidsp 3 2 DDTDEB ifddt enth lt eine Option zum einfachen Verfolgen des internen Programmablaufs Wird diese Debugging Funktion mittels der Umgebungsvariable DDTDEB aktiviert so erscheint in der Fehlerausgabe des ifddt eine Auflistung der internen Funktionen Die eigentlich zu generierende Ausgabe
34. en Wert 16 so werden alle Tabellendefinitionen ausgegeben Nach dem Aufruf erstellt ifddt eine Datei namens infstorage im lokalen Arbeitsverzeichnis Beachten Sie dass diese Datei keinen Unterstrich enth lt Dies soll Sie vor versehentlichem berschreiben Ihrer aktuellen inf_storage Datei sch tzen Kopieren Sie die von ifddt generierte Datei bitte nicht auf Ihre bestehende inf_storage Datei sondern bertragen Sie mit Bedacht die von ifddt generierten Eintr ge 52 4 Bedienungsanleitung 5 Administrative Anforderungen Die Anwendung mancher ifddt Optionen setzen bestimmte Funktionalit ten der beteiligten Datenbankserver und der Hardware voraus In diesem Abschnitt werden einige Einstellungen n her erl utert 5 1 Einrichten einer Server Server Verbindung Zum Einrichten einer Server Server Verbindung wie sie zum direkten Kopieren von Datenbanken und Tabellen im Netz notwendig ist m ssen Sie auf beiden beteiligten Server Instanzen jeweils die sqlhosts Datei so anpassen dass die jeweiligen Remote Server Instanzen dem lokalen System bekannt sind Das nachfolgende Beispiel zeigt eine typische TCP IP Verbindung bei der auf dem Rechner munich eine Socket und auf dem Rechner berlin eine TLI Schnittstelle verwendet wird Neben diesen prinzipiellen Voraussetzungen mu zur problemlosen bernahme der Daten auch die Benutzerkennung auf beiden beteiligen Rechnern vorhanden sein und als trusted user bekannt gemacht werden ndern Sie daher
35. erden erfolgt nicht etwa der Befehl ALTER INDEX TO CLUSTER sondern ein Update des Systemkatalogs der ausschlie lich vom Benutzer informix abgesetzt werden darf 4 11 Indizes reorganisieren I dateiname Mittels der Option I dateiname k nnen Sie die Indizes einzelner oder aller Tabellen reorganisieren Da bei detached Indizes keine Extentgr e gew hlt werden kann und da die intern vergebene Gr e in der Regel zu klein ausf llt m ssen Indizes von Zeit zu Zeit reorganisiert werden Dabei ist es nicht notwendig die ganze Tabelle zu reorganisieren es reicht hier die einzelnen Indizes neu anzulegen Mittels der Option I dateiname schreibt ifddt alle Anweisungen zum L schen und zur Neuanlage aller Indizes in die Datei dateiname Es ist dabei sichergestellt dass zum einen alle referenzierenden Constraints die implizit durch das L schen von Primary Keys entfernt werden auch wieder neu erstellt werden zum anderen werden keine Constraintdefinitionen mehrfach gel scht oder wieder angelegt Die auf diese Weise erzeugte SQL Datei kann anschliessend manuell mittels dbaccess ausgef hrt werden Die gleichzeitige Anwendung der Option G sorgt parallel zur Indexreorganisation daf r dass implizite Indizes neu generiert werden 30 4 Bedienungsanleitung ifddt Benutzerhandbuch iidsp 4 12 Datenbanken kopieren n name Im Gegensatz zum Entladen einer Datenbank wird beim Kopieren einer Datenbank auf eine Zwischenablage der Daten verzich
36. ersionen des ifddt die Angabe der Zieldatenbank nicht notwendig war wurde diese Angabe im Rahmen der Parallelisierung notwendig Sofern Sie eine Kopie einer Datenbank mittels der Option n dbname erstellen wird als Name der Zieldatenbank der Name nach der Option n verwendet Wenn Sie jedoch die Daten in ein Verzeichnis entladen so m ssen Sie die Option g dbs name verwenden 4 38 Datenbanknamen spezifizieren g dbs name Mit der Option g dbs name legen Sie den Namen der Zieldatenbank fest Dieser kann anschliessend ausser durch manuelle nderung in der SQL Anweisungsdatei nicht mehr ge ndert werden Sofern Sie diese Option weglassen wird der Name der Zieldatenbank aus dem Namen des Entladeverzeichnisses N oder aus der Angabe nach der Option H ermittelt 4 39 Autoselect der Parallelverarbeitung g ppr Mit der Option g ppr weisen Sie ifddt an eine Parallelverarbeitung anzuwenden wobei ifddt die Anzahl der parallel laufenden Prozesse aus der Anzahl der DbSpaces ermittelt 4 Bedienungsanleitung 49 iidsp ifddt Benutzerhandbuch Besser als die automatische Ermittlung paralleler Prozesse ist die direkte Angabe der parallelen Prozesse 4 40 Anzahl der parallelen Prozesse festlegen g anzahl_prozesse Mit der Option g anzahl_prozesse wird ifddt anzahl_prozesse viele Ladeprozesse generieren Als optimale Einstellung f r die Anzahl der Prozesse ergibt sich die Formel NUMCPUVPS x 2 wobei Sie den Wert f r N
37. geben Die brigen Regeln des Entladens wie beispielsweise die High Performance Loader Optionen oder die ALTER TABLE Anweisungen bleiben hiervon unber hrt Beim Laden der Daten wird die Kompression ber cksichtigt d h beim Laden werden die Daten ber die Dekompressionsprogramme ermittelt Es wird davon ausgegangen dass die Dekompressionsprogramme zum Zeitpunkt der Ausf hrung auf dem Zielsystem vorhanden sind Ein Sicherstellung seitens ifddt erfolgt hierbei nicht Stellen Sie daher bereits vor dem Entladen sicher dass das Programm zur Dekompression auf dem Zielsystem vorhanden ist 4 9 3 Umgebungsvariable DBMONEY Bis zur Version 3 05 wurde die Umgebungsvariable DBMONEY seitens ifddt nicht ausgewertet d h es wurde bei Fliesskommawerten wie SMALLFLOAT und FLOAT grunds tzlich ein Dezimalpunkt ausgegeben Der Inhalt der Variable wird seit 3 05UD2 ber cksichtigt und daher muss auf der Zielmaschine vor dem Ladevorgang sichergestellt werden dass die Umgebungsvariable beim Laden den gleichen Wert aufweist wie zum Zeitpunkt des Entladens Um w hrend des Entladens garantieren zu k nnen dass nur logisch konsistente Daten gelesen werden sperrt ifddt die zu entladende Datenbank w hrend des ganzen Vorgangs exklusiv Stellen Sie daher vor dem Aufruf von ifddt sicher dass kein anderer Anwender zu diesem Zeitpunkt die Datenbank ausgew hlt hat Diese exklusive Sperre l sst sich mit Hilfe der Option l umgehen Jedoch ist die logische Konsistenz de
38. hend dieser Installationsanleitung durch 1 1 Produktverzeichnis anlegen Melden Sie sich zun chst unter der Benutzerkennung root an und richten Sie f r die iidsp Produkte ein eigenst ndiges Unterverzeichnis ein sofern Sie dies nicht bereits f r andere iidsp Programme durchgef hrt haben bin su mkdir opt informix iidsp 1 2 Umgebungsvariablen Setzen Sie anschlie end die Umgebungsvariable IIDSPDIR auf den absoluten Pfadnamen des Produktverzeichnisses Unter Verwendung der C Shellsetzen Sie Umgebungsvariablen mit folgendem Befehl setenv IIDSPDIR opt informix iidsp Unter Verwendung der Bourne Shell oder Korn Shell setzen Sie Umgebungsvariablen folgenderma en IIDSPDIR opt informix iidsp export IIDSPDIR In den nachfolgenden Beispielen arbeiten wir durchgehend mit der Korn Shell Sofern Sie die C Shell oder eine andere Shell anwenden m ssen Sie die Beispiele jeweils anpassen Wechseln Sie anschlie end in das Produktverzeichnis cd IIDSPDIR 1 3 Kopieren und Entpacken der Software Kopieren Sie nun die Installationsdateien vom Installationsmedium in das Produktverzeichnis 1 Installationsanleitung 1 iidsp ifddt Benutzerhandbuch und entpacken Sie die Installationsdatei cp mnt ifddt tar SIIDSPDIR tar xf IIDSPDIR ifddt tar Anschlie end sollte das Produktverzeichnis folgende Unterverzeichnisse aufweisen Enth lt die ausf hrbaren Programme EEE doc Enth lt die Dokumentation Enth l
39. icht sofort ausf hrt Die Ausf hrung wird letztlich mittels des Programms dbaccess realisiert Somit lassen sich vor einer anstehenden Reorganisation die bevorstehenden Schritte berwachen und sind leichter zu koordinieren ifddt verwendet die native Informix Schnittstelle f r den Zugriff auf die IBM Informix Systemtabellen Zur Ermittlung der realen Extent Gr en ist es nicht nur notwendig auf den Systemkatalog der zu bearbeitenden Datenbank zuzugreifen es m ssen auch einige Verwaltungstabellen der sysmaster Datenbank gelesen werden Je mehr Tabellen innerhalb einer Server Instanz vorhanden sind und somit ber die sysmaster Datenbank verwaltet werden desto l nger dauert auch der erste Verarbeitungsschritt des Programms ifddt Im ersten Schritt ermittelt ifddt die spezifischen Gr en der Partition Informationen der Datenbanktabellen und hinterlegt diese tempor r in einem dynamischen Speicher Intern werden die Partition Informationen sp ter in einem eigenen Hash Join Verfahren mit den Tabelleninformationen des Systemkatalogs verkn pft Anschlie end werden alle Tabellen des Systemkatalogs gelesen und ausgewertet Um sicherstellen zu k nnen dass jede Tabelle nur einmal gelesen wird entstehen einige tempor re Dateien welche im Verzeichnis imp bzw DBTEMP abgelegt werden In diesen tempor ren Dateien befinden sich in nicht sortierter Reihenfolge die SQL Befehle zur Anlage von Tabellen Indizes und der Ladeanweisungen Die Gesamtg
40. ifddt Benutzerhandbuch Stefan Weideneder Copyright 1999 2009 SEB Weideneder Munich Inhaltsverzeichnis 1 Installatonsanleitung nsne ee 1 1 1 Produktverzeichnis nl eu 1 l Umgebung y 18 OOSORNRREBEDEEEDEUEBBRRREREADERNEURDREREUDE BERRSTUNEBERFEERCER AST EUEPRFERGENERETUNBNERGERSAR 1 1 3 Kopieren und Entpacken det SIR anna 1 1 4 Tan er SONAE s R 2 L3 DEV N een 3 2 PRNEBOISWERN enge a 21 Punkt ons beschte DUN eek 5 22 Extent ren 6 2 gt keee eder Tipe lenan at Gnana A AAA AN 6 2 4 Arbeten Pi der storage Datel eine 6 3 KENNE TO ee E 9 3 ben 11 SL DD TINVIEW nein 12 AS DEREN ensure 13 33 DITSE nee 14 EDIS IL AOIN Aa E E E AE RE E E T 15 2a MINDHPERO W S ernennen 16 MAS PILE SEE oera EAR 17 3 7 IFDDT_CONN_RETRY und IFDDT_CONN TIME 18 3 8 DEDELIMITER DBMONEY und DELIMIDENT uses 19 4 Bediojunesanie hii ae 21 4 1 Datenbank Scherna erstellen en ne aa a A 21 4 2 Serverspezifische Tabelleneigenischaften ausgeben S Tanne ea 21 4 3 Gr obeninformahonen AUSWETIEN nee 22 4 4 Standard Constraint Namen unterdr cken ueueeeesnneersesnsnenensnennennnnnnnnnenennnen 23 4 5 Not Null Constraint Namen unterdr cken C 2222222ssseeeeeeeeeeeeeeeeennenn 23 4 6 Erzeugen einer Standard storage Dale 5 Lassen 23 4 7 Fxtent Mulliplikator festlegen IE ter aaa 24 BEENDEN A E E E E E 24 4 9 Entladen Einer Datenbank N Ne ae 25 NEW 1 sol nu lo AW es a NA E E 26 4 9 2 Entladedateien komprimieren
41. in der Kommandozeile auf alle in dem Verarbeitungsproze angesprochenen Tabellen bezieht kann mittels der storage Datei f r jede Tabelle eine individuelle Extent Gr e vereinbart werden Mehr zur Anwendung der storage Datei erfahren Sie unter Arbeiten mit der storage Datei 2 3 Reihenfolge der Tabellenanlage ifddt erstellt immer eine Schema Datei die standardm ig auf dem Standard Ausgabekanal ausgegeben wird Die Schema Datei enth lt alle SQL Befehle zur Anlage der entsprechenden Tabellen Die Befehle erscheinen in der Ausgabe stets in einer festen Reihenfolge Begonnen wird mit den gr ten Tabellen um diesen bei der Anlage den freien Platz in den DbSpaces weitgehend garantieren zu k nnen W rde abschlie end der freie Platz f r die kleinsten Tabellen nicht mehr ausreichen so w rde noch vor dem Laden der ersten Tabelle eine Fehlermeldung erscheinen 2 4 Arbeiten mit der storage Datei Sollen bei einzelnen Tabellen einer bestehenden Datenbank gezielt nderungen im server spezifischen Bereich vorgenommen werden so kann dies ber die Zuhilfenahme einer storage Datei geschehen Der Aufbau der storage Datei erlaubt es Direktiven f r eine oder mehrere Tabellen verschiedener Datenbanken vorzugeben Neben den Direktiven f r Tabellen sind auch Direktiven f r Indizes zul ssig Erfolgt die Angabe einer Index Direktive so geht ifddt davon aus dass es sich bei diesem Index um einen detached Index handelt der m glicherweise in ein
42. iner ehemaligen Tabellennummer ger t Zwar sind die Tabellennummern konfliktfrei nicht aber die bernommenen Constraint Namen Durch Angabe der Option c sorgen Sie daf r dass die Standard Constraint Namen nicht bernommen werden Durch diese Option wird die Ausgabe der Standard Constraint Namen unterdr ckt 4 5 Not Null Constraint Namen unterdr cken C Neben der M glichkeit Standard Constraint Namen zu unterdr cken k nnen Sie auch generell auf die Ausgabe der Constraint Namen bei Not Null Constraints verzichten Diese Option ist sinnvoll wenn die meisten Ihrer Tabellenfelder Not Null Constraints enthalten Somit kann ifddt auf die Pr fung der Constraint Namen g nzlich verzichten und die Erstellung des Schemas erfolgt me bar schneller Die Not Null Definitionen werden nat rlich dennoch ausgegeben lediglich deren Namen werden fehlen Das Unterdr cken der Ausgabe der Not Null Constraint Namen aktivieren Sie mit Hilfe der Option C Bei gro en Datenbanken sollte diese Option standardm ig aktiviert werden 4 6 Erzeugen einer Standard storage Datei S Zur Anlage einer Storage Datei w hlen Sie anstelle der Option s die Option S gefolgt von einem Dateinamen ifddt legt dann die Storage Datei an sofern die Datei bislang nicht existierte Eine Datei Endung ist nicht bindend zur besseren Unterscheidung sollten Sie aber eine einpr gsame Endung w hlen Sie k nnen eine einzige Storage Datei f r mehrere Datenbanken nutzen
43. innt und beliebig viele weitere Zeichen enth lt Grunds tzlich ist es ein Unterschied ob Sie die Option t nennen oder nicht Wenn Sie die Option t nennen so werden im Gegensatz zum Aufruf ohne die Option t keine Stored Procedure Definitionen keine Rechte oder View Definitionen ausgegeben 4 16 3 Zugeh rige Views entladen v Standardm ig erzeugt ifddt sowohl beim Entladen als auch beim Kopieren einzelner Tabellen keine View Definitionen Sollen die View Definitionen die in direktem Zusammenhang mit den zu entladenden Tabellen stehen bernommen werden so geben Sie auf der Kommandozeile die Option v an Diese Option wird automatisch aktiviert wenn Sie in der Kommandozeile entweder die Option r oder R angegeben haben da durch das vorherige L schen der Tabellen auch implizit alle damit in Verbindung stehenden View Definitionen gel scht werden 4 16 4 Tabelle vor der Anlage l schen r R Bei der bernahme einzelner oder aller Tabellen in eine bestehende Datenbank w rden die Befehle zur Anlage der Tabellen fehlschlagen sofern die Tabellen auf dem Zielsystem bereits existieren Sofern Sie sicher sind dass die Tabellen auf dem Zielsystem bereits unter 4 Bedienungsanleitung 35 iidsp ifddt Benutzerhandbuch gleichem Namen existieren K nnen Sie die alten Tabellen des Zielsystems vor der erneuten Anlage l schen Mit Hilfe der Option r weisen Sie ifddt dazu an den entsprechenden DROP TABLE Befehl vor dem CREA
44. ird ifddt nur dann den Weg ber den HPL w hlen falls die zu ladende Tabelle mehr als 10000 S tze aufweist Sofern Ihnen dieser Wert zu niedrig oder zu hoch erscheint k nnen Sie diese minimale Anzahl von Datens tzen mit Hilfe der Umgebungsvariablen MINHPLROWS vor dem Start von ifddt ver ndern MINHPLROWS 200000 export MINHPLROWS 4 Bedienungsanleitung 47 iidsp ifddt Benutzerhandbuch In diesem Beispiel werden nur Tabellen die mehr als 200000 S tze enthalten mittels dem HPL geladen die brigen werden regul r mit dem load Befehl des dbaccess geladen Beachten Sie dass weitere Kriterien gibt welche einen schnellen Ladevorgang mittels des High Performance Loaders ausschlie en Hierzu z hlt unter anderem eine Satzl nge die nicht mehr in eine Systempage passt sowie bestimmte Datentypen welche seitens des HPL nicht unterst tzt werden Nach dem Ladevorgang mittels des High Performance Loaders muss eine Datensicherung mittels des Informix Dynamic Servers folgen um ein fehlerfreies Arbeiten im Anschluss sicher zu stellen Seitens der ifddt Werkezeuge wird lediglich eine Pseudo Sicherung implementiert um ein Weiterarbeiten m glich zu machen Stellen Sie bitte bei Bedarf selbst noch einmal sicher dass Sie eine vollst ndige Datensicherung nach dem Ladevorgang haben um im Ernstfall ein Wiederaufsetzen m glich zu machen 48 4 Bedienungsanleitung ifddt Benutzerhandbuch iidsp 4 37 Optionen zur Parallelverarbeitung g
45. ist in diesem Fall nicht mehr sinnvoll zu verwenden Sofern das Programm jedoch stets in einen Fehler l uft oder gar die Aufgabe abbricht ist dies in der Regel eine sehr schnelle Option um den Support bei der Fehlersuche zu unterst tzen Folgen Sie zum Setzen der Variable daher den Anweisungen Ihres Support Teams DDTDEB 2 export DDTDEB ifddt d checkdata c C s i gt dev null 2 gt debug log 3 Umgebungsvariablen 13 iidsp ifddt Benutzerhandbuch 3 3 DDTST Standardm ig werden seitens ifddt nur Tabellen ausgegeben welche die Datenbankadministratoren angelegt haben Systemtabellen k nnen ausgegegen werden sofern die Umgebungsvariable vor dem Aufruf auf irgendeinen Wert gesetzt wird Prinzipiell ist der Aufbau der Systemtabellen zwar nur selten von Interesse jedoch lassen sich auf diese Weise schnell Unterschiede zwischen verschiedenen Versionen erkennen DDTST 1 export DDTST ifddt d checkdata c C s i t sys gt checkdata sys 14 3 Umgebungsvariablen ifddt Benutzerhandbuch iidsp 3 4 DDTCOMP Beim Entladen k nnen Tabellen generell auch komprimiert entladen werden indem die Option Z eingesetzt wird Die dazu verwendeten Programme sind gzip compress oder zip mit den jeweiligen Dekompressionsprogrammen Sofern das ihrerseits gew nschte Programm nicht vorhanden ist k nnen Sie ein eigenes Programm w hlen Tragen Sie das Kompressions und ein Dekompressionsprogramm getrennt durch ein Semikolon in
46. itung 45 iidsp ifddt Benutzerhandbuch qualifizierten Tabellennamen und der dritte Parameter wird mit dem Namen des Tabelleneigent mers belegt unabh ngig davon ob es sich um eine ANSI Datenbank handelt 4 33 Update Statistics U Sowohl beim Kopieren als auch beim Entladen von Tabellen und ganzen Datenbanken ist es sinnvoll abschlie end die Statistiken des Optimierers f r die Tabellen mittels des Befehls UPDATE STATISTICS zu aktualisieren Dieser Befehl sorgt innerhalb des Servers jedoch daf r dass die jeweilige Tabelle vollst ndig inklusive aller Indizes gelesen wird Daher ist es sinnvoll die Statistiken sofort zu aktualisieren sobald alle Informationen die die Statistiken betreffen geladen sind Weist eine Tabelle keinen Index auf so kann die Statistik bereits nach dem Laden der Daten aktualisiert werden Enth lt die Tabelle ausschlie lich explizite Indizes so kann die Statistik nach der Erstellung des letzten Indexes erfolgen Weist eine Tabelle implizite Indizes auf so kann die Aktualisierung der Statistik erst nach der letzten Constraint Definition erfolgen Mit der Option U weisen Sie ifddt dazu an die entsprechenden Befehle zur Aktualisierung der Statistiken auszugeben Sofern der Datenbankserver einen hinreichend gro en Cache Buffer Pool aufweist wird durch die Platzierung der Befehle auf ein erneutes Lesen der Tabellen verzichtet Beachten Sie bitte auch dass ifddt evtl explizite Update Statistics High Medium
47. lizieren Der Extent Multiplikator kann eine Genauigkeit von 7 Stellen aufweisen Die resultierende Extent Gr e wird dabei generell auf ein Vielfaches einer Page Gr e gerundet Die Obergrenze bei der Extent Berechnung f r die Extent Gr en ist auf 2GB bzw 32GB die Untergrenze f r Extent Gr en ist auf 16 Kilobyte limitiert Den Faktor geben Sie auf der Kommandozeile hinter der Option e ein Verwenden Sie zur Darstellung der Flie kommazaHhl anstelle des Kommazeichens den Punkt ifddt d storesdemo 2 0 s Sofern Sie die Option S Storage Datei anwenden werden auch alle betroffenen Tabellen in der Storage Datei mit der neuen Extent Gr e aktualisiert Ein wiederholter Aufruf mit der Option e und dem gleichen Faktor w rde daher die Extent Gr en erneut mit dem Faktor multiplizieren Die Option e bezieht sich immer auf die initiale Extentgr e Die Standardgr e f r die Next Extents entspricht einem Drittel der kalkulierten First Extent Gr e und kann mit Hilfe der Option E ver ndert werden Auch hier gelten die Ober und Untergrenzen f r Extentwerte 4 8 Zielversion festlegen u Mittels der Option u K nnen Sie die Versionsnummer der Informix Zielumgebung vorgeben Diese Option ist sinnvoll wenn Sie von der Version 7 x auf eine Version 9 x und 24 4 Bedienungsanleitung ifddt Benutzerhandbuch iidsp gr sser migrieren und umgekehrt Grunds tzlich pr ft ifddt die Versionsnummer Ihrer aktuellen Umgebu
48. lle Daten der Datenbank stores7 des Datenbankservers berlin_tli enth lt 4 15 Kopieren einer Datenbank innerhalb eines Servers M chten Sie eine Datenbank innerhalb einer Server Instanz kopieren so bedenken Sie vorab dass die neue Datenbank in anderen DbSpaces liegen sollte Es ist in der Regel schneller eine Datenbank von einer auf eine andere Festplatte zu kopieren als innerhalb einer Festplatte Weisen Sie ifddt daher an f r die neue Datenbank andere DbSpaces einzusetzen sofern in Ihrem System ein DbSpace einer Festplatte entspricht Soll die Anzahl der DbSpaces identisch bleiben so empfehlen wir die Option m zum DbSpace Mapping anderenfalls empfehlen wir den Einsatz der Option S Storage Datei Soll die Datenbank stores7 auf dem Datenbankserver muc_shm unter dem Namen st7c 4 Bedienungsanleitung 33 iidsp ifddt Benutzerhandbuch kopiert werden so setzen Sie folgende Befehle ab export INFORMIXSERVER muc_shm ifddt d stores7 s m c C i n st7c gt st7 c sql echo create database st7c in dictdbs dbaccess dbaccess e st7c st7c gt st out 2 gt st err oder export INFORMIXSERVER muc_shm echo create database st7c in dictdbs dbaccess ifddt d stores7 s m c C i n st7c dbaccess st7c Pr fen Sie auch nach diesen Befehlen wieder die Protokolldateien hinsichtlich eventuell aufgetretener Fehler Pr fen Sie ob in den Protokolldateien das Wort Error auftritt und pr
49. lt haben k nnen Sie die Zusatzoptionen D dbspacelist zur Bestimmung der Ziel DbSpaces sowie die Option M month zur Berechnung der Extent Gr en anwenden 4 29 1 DbSpace Definitionen festlegen D dbspacelist Sofern Sie mit einer Storage Datei arbeiten m chten und bei einer oder mehreren Tabellen die letzte Spalte der Storage Datei nicht angeben so wird ifddt die Tabellen in einem beliebigen existierenden DbSpace anlegen Beim Verteilen der Tabellen versucht ifddt die vorhandenen DbSpaces so zu belegen dass diese nach dem Anlegen der Tabellen gleichm ig gef llt sind Wenn Sie die Tabellen jedoch anschlie end in ein anderes Informix Dynamic Server System bertragen in dem die DbSpaces des Ausgangs Systems nicht existieren oder wenn die DbSpaces im Zielsystem nicht den gleichen freien Platz aufweisen so ist es ratsam die Namen und Gr en der DbSpaces des Zielsystems bereits beim Aufruf von ifddt bekannt zu machen Die verschiedenen Werte werden in der Kommandozeile durch einen Doppelpunkt voneinander getrennt Bei den Angaben muss es sich stets um ein Tupel bestehend aus DbSpace Name und dem freien Platz in Kilobyte handeln Eingeleitet wird die DbSpace Definition mit der Option D z B Aufbau der Datei munich ddt ifddt d st7c S munich ddt D sp1 200000 sp2 300000 In diesem Beispiel werden alle in der Storage Datei munich ddt genannten Tabellen bei denen in der letzten Spalte die Angabe des DbSpaces bzw eines
50. lussen den Verbindungsaufbau des ifddtep Ist der D monprozess zum Zeitpunkt des Verbindungsaufbaus noch nicht gestartet so wiederholt der ifddtep Prozess den Vorgang sooft wie Sie in der Umgebungsvariablen IFDDT_CONN_RETRY eingetragen haben Die Zeitspanne zwischen den Versuchen k nnen Sie in Sekunden mittels der Umgebungsvariable IFDDT_CONN_TIME definieren Setzen Sie diese Variablen unmittelbar vor dem Start der Daten bernahme IFDDT_CONN_RETRY 3 IFDDT_CONN_TIME 10 export IFDDT_CONN_RETRY IFDDT_CONN_TIME ifddt d checkdata nb neu s c C i W dbaccess 18 3 Umgebungsvariablen ifddt Benutzerhandbuch iidsp 3 8 DBDELIMITER DBMONEY und DELIMIDENT Bei diesen Variablen handelt es sich um regul re Informix Dynamic Server Umgebungsvariablen welche beim Entladen und Laden von Daten die Ausgabe beeinflussen Die Wirkungsweise der Variablen wird seitens des ifddt entsprechend unterst tzt Wird DELIMIDENT eingesetzt so ndern sich unter anderem die Namen der Entladedateien diese werden in diesem Fall entsprechend durchnumeriert 3 Umgebungsvariablen 19 iidsp 20 ifddt Benutzerhandbuch 3 Umgebungsvariablen 4 Bedienungsanleitung Mit Hilfe von ifddt k nnen Sie entweder e ein Datenbankschema erstellen e ein Tabellenschema erstellen e ein Skript zum Kopieren ganzer Datenbanken anlegen e ein Skript zum Kopieren einzelner Tabelle erzeugen e Datenbanken entladen und ein Skript zum Laden ge
51. mit alle PDQ Ressourcen f r die Daten bernahme zur Verf gung stehen Setzen Sie den Wert f r DS_TOTAL_MEMORY auf des zur Verf gung stehenden virtuellen Speichers den Sie mit Hilfe des Kommandos onstat g seg ermitteln k nnen Wenn Sie 100000KB virtuellen Speicher zur Verf gung haben 100MB setzen Sie das Kommando onmode M 66600 ab Nach einem abschlie enden Neustart des Servers werden die mit dem Kommando onmode vorgenommenen nderungen wieder r ckg ngig gemacht Sofern die Standardeinstellung der entsprechenden Konfigurationsparameter bereits diese Werte aufweisen m ssen Sie das Kommando onmode nicht starten 5 3 Beschleunigung des Ziel Servers Um eine Daten bernahme auf dem Ziel Server zu beschleunigen empfehlen wir Ihnen w hrend der bernahme in relativ kurzen Zeitabst nden einen physikalischen Checkpoint zu erzwingen Am einfachsten erreichen Sie dies ber die AutoFlush Funktion die Sie unter der URL http www weideneder de download admin autoflush scr herunterladen k nnen und w hrend der bernahme in einem separaten Fenster laufen lassen 5 4 Voraussetzungen der Web Server Konfiguration Zum Betrieb des ifddt Assistenten mu sowohl das Programm ifddt als auch die 54 5 Administrative Anforderungen ifddt Benutzerhandbuch iidsp I CONNECT Schnittstelle auf der gleichen Maschine laufen wie der Web Server Des weiteren m ssen folgende Kriterien erf llt sein e Der Web Server mu
52. n dass obgleich Sie korrekte Extentgr en f r Ihre Tabellen definiert hatten die Anzahl der Index Extents schnell ansteigt Ursache hierf r kann eine fragmentierte Tabelle oder aber viele nicht gef llte variabel lange Objekte sein M chten Sie bestehende Indizes einer Datenbank oder verschiedener Tabellen reorganisieren so setzen Sie die Option I dateiname ein Alle zur Indexreorganisation notwendigen Befehle werden dabei in der genannten Datei abgelegt wobei folgendes gilt Wurde ein Index in Folge eines Referentiellen Constraints angelegt und nicht speziell benannt so wird zun chst der Constraint gel scht und anschliessend wieder angelegt Durch die Wiederanlage des Constraints wird auch der Index neu erstellt Handelt es sich um einen Prim r oder Unique Constraint so werden durch das L schen dieses Constraints implizit alle referenzierenden Constraints gel scht Aus diesem Grund werden alle davon betroffenen referenzierenden Constraints am Ende der Datei ebenfalls neu erstellt Handelt es sich um einen einfachen Index so wird dieser zun chst gel scht und anschliessend erneut angelegt Um sicherzustellen dass w hrend der Verarbeitung kein Problem auftritt werden alle diese zur Reorganisation erforderlichen Aktionen in einer einzigen Transaktionsklammer plaziert Stellen Sie vor dem Aufruf dieser Befehlsfolge daher sicher dass Sie vorab die Umgebungsvariable DBACCNOIGN auf den Wert 1 gesetzt haben Somit wird die abschliesse
53. n gend freier Platz zur Verf gung steht so bricht ifddt den Entladevorgang mit der Fehlermeldung tabelle unl No space left on device beziehungsweise I O error while writing to file tabelle unl ab In diesem Fall m ssen Sie die zuletzt entladene Datei l schen und den Vorgang zusammen mit der Restart Option des ifddt noch einmal starten Stellen Sie zuvor sicher dass sowohl die Umgebungsvariable MAX_FILE_SIZE richtig gesetzt ist und gen gend Speicher in dem Dateisystem zur Verf gung steht Weist eine Tabelle einen CLUSTER INDEX auf so werden die Tabellendaten sortiert entladen so dass beim anschlie enden Ladevorgang auf eine erneute Sortierung verzichtet werden kann W hrend des Entladevorgangs pr ft ifddt die entladenen Daten dahingehend ob diese auch wieder geladen werden k nnen Warning double value possibly incorrect Warning conversion function problem near line n of xxx Tritt dieser Fehler auf so bricht ifddt den Vorgang nicht ab Pr fen Sie in diesem Fall manuell ob die entsprechende unload Datei in der betreffenden Zeile einen Fehler aufweist und versuchen Sie die fehlerhaften Daten durch richtige zu ersetzen 4 9 1 Restart Option w Die Restart Option erm glicht das Wiederaufsetzen nach einem Fehler beim Entladen von Datenbanken oder einer Reihe von Tabellen Dabei pr ft ifddt vor dem Entladen einer Tabelle ob diese bereits im Entladeverzeichnis vorhanden ist Indem Sie die zuletzt fehlerhafte Entladedatei
54. n sind bisweilen sinnvoll um ein erfolgreiches Kopieren von Tabellen zu pr fen Das Trennzeichen f r diese Datei ist stets das Pipe Symbol unabh ngig von der Umgebungsvariable DBDELIMITER 4 32 Tabellensuche API 2 Die Option z aktiviert eine zus tzliche Pr fung ob Tabellen in einen Kopiervorgang bernommen werden sollen Zun chst werden alle lokalen Regeln wie die Option t bzw t o etc angewendet Alle Tabellen die diesen Kriterien gen gen werden bei Angabe der Option z zus tzlich an die Funktion ifddt_lookup der Datenbank sysmaster bergeben Liefert diese Funktion einen Wert ungleich 0 so wird die Tabelle weggelassen Liefert die Funktion den Wert 0 so wird die Tabelle verwendet Der Aufbau einer solchen Interface Funktion sieht wie folgt aus dbaccess sysmaster lt lt eof create procedure ifddt_lookup dbname_vc varchar 128 tabname_vc varchar 128 owner_vc char 32 returning int define rows_l int8 select sum iswrites isrewrites isdeletes into rows_l from sysptprof where tabname tabname_vc and dbsname dbname_vc if rows_l gt 0 then return 1 end if return 0 end procedure eof Die Interface Funktion muss auf dem Quellsystem in der sysmaster Datenbank bereitgestellt und f r alle Benutzer ausf hrbar gemacht werden Beim sp teren Aufruf wird der erste Parameter mit der zu kopierenden Datenbank belegt der zweite Parameter enth lt den voll 4 Bedienungsanle
55. name sich aus einem Teil des Tabellennamens und der eindeutigen Tabellennummer tabid zusammensetzt Sofern Sie die Umgebungsvariable DELIMIDENT gesetzt haben besteht der Tabellenname ausschliesslich aus der eindeutigen Tabellennummer Die unload Dateien weisen die Endung unl auf Die maximale Gr e der unload Dateien liegt bei 2130706432 Byte Entstehen w hrend der Entladevorgangs f r eine Tabelle mehr Daten so werden weitere unload Dateien angelegt deren Dateiendung dann um den Zusatz exn erweitert wird Das K rzel ex0 steht dabei f r die erste Erweiterung ex1 f r die zweite Erweiterung etc Die maximale Gr e der Dateien k nnen Sie verkleinern indem Sie vor dem Aufruf von ifddt die Umgebungsvariable MAX_FILE_SIZE auf die maximale Dateigr e in Byte setzen Sie sollten die Gr e aber nicht gr er als 2GB definieren falls es sich bei dem Zielsystem Ihres IBM Informix Servers um eine 32 bit Version handelt Bei einem 64 bit Informix Server sollten Sie die Variable nicht gr er setzen als 4GB Haben Sie ein 64 bit ifddt Programm zusammen mit einem 64 bit Informix Server im Einsatz so k nnen Sie die Variable problemlos h her setzen M chten Sie eine Datenbank vollst ndig entladen so m ssen Sie zun chst ein Dateisystem 4 Bedienungsanleitung 25 iidsp ifddt Benutzerhandbuch suchen das noch hinreichend freien Platz zur Speicherung der entstehenden Dateien enth lt Stellt ifddt w hrend des Entladens fest dass nicht ge
56. nbuffered Logging Mode Ansi i Eine Option zur Bestimmung des Ziel DbSpaces f r die Datenbank existiert nicht In der Regel ist es empfehlenswert die Datenbank manuell mittels dem Werkzeug dbaccess anzulegen 4 Bedienungsanleitung 31 iidsp ifddt Benutzerhandbuch 4 12 1 Clustered Indizes Eine Eigenschaft von ifddt ist es beim Erstellen des Anweisungs Skripts zu pr fen ob eine Tabelle einen CLUSTER INDEX aufweist Die Anlage dieser Indizes sorgt stets daf r dass die zugeh rige Tabelle vollst ndig physikalisch reorganisiert wird Diese Reorganisation dauert in der Regel l nger als das vorherige Laden der Tabelle und Anlegen der Indizes Um die physikalische Sortierung der Tabellendaten zu umgehen werden die Daten bereits sortiert geladen Allerdings ist es grunds tzlich bei einer INSERT Anweisung die einen SELECT enth lt nicht m glich der SELECT Anweisung eine ORDER BY Klausel anzuh ngen Daher w hlt ifddt eine etwas aufwendigere Variante vor dem eigentlichen INSERT Befehl wird in diesem Fall eine Stored Procedure namens I_ifddt_spO definiert welche die zu ladenden Daten sortiert zur ck liefert Unmittelbar nach dem Laden wird die Stored Procedure wieder gel scht Bei der bernahme ganzer Datenbanken kann der Name der Stored Procedure nicht in Konflikt mit Ihren privaten Stored Procedures geraten da Ihre Stored Procedures erst nach dem Laden der Tabellen definiert werden Problematischer ist dies beim Kopieren einzelner
57. nde Anweisung commit work im Fehlerfall nicht durchgef hrt Grunds tzlich werden zun chst die Constraints dann die explizit benannten Indizes gel scht Anschliessend erfolgt die Wiederanlage der benannten eindeutigen Schl ssel gefolgt von der Anlage der Primary und Unique Constraints Abschliessend erfolgt dann die Anlage der referenzierenden Constraints 4 26 Constraints auslagern B datei Nach dem Kopieren bzw Laden von Tabellen wird viel Zeit f r die Wiederanlage von Fremdschl sselbeziehungen verwendet obgleich eine Pr fung eben dieser in der Regel entfallen kann Falls Sie sicher sind dass eine Wiederanlage dieser Constraints sichergestellt ist k nnen Sie die Constraintdefinitionen in einer separaten Datei auslagern Setzen Sie hierzu die Option B gefolgt von einem Dateinamen ein beim Entladen Option N sollten Sie ein vom Entladeverzeichnis abweichenden absoluten Pfadnamen verwenden Die dabei erzeugte Constraintdatei ist eine ASCII Datei welche einzelne durch ein Semikolon voneinander getrennte Spalten aufweist 40 4 Bedienungsanleitung ifddt Benutzerhandbuch iidsp SEES EZ KEY CONSTRAINT FILE Ensure PDQ low SEE ZZ EEE HH stefan stefan stefan stefan stefan stefan b1666 0 stefan bl666_prim fl In der ersten Spalte befindet sich der Eigent mername der Tabelle gefolgt vom Tabellennamen Die dritte Spalte enth lt eine 0 wenn es sich um einen Fremdschl
58. ne solche Pr fung bei bestimmten Tabellen oder der ganzen Datenbank vornehmen Das Resultat der Pr fung wird in der Datei protokolliert welche Sie hinter der Option A nennen In der Ausgabedatei wird in jeder Zeile das Optimiererverhalten f r ein Index beschrieben informix fraggy fraggy_idx01 0 Y informix fraggy fraggy_idx01 2 Y stefan tsollkvpv tsollkvpv_1d 0 Y stefan tsollkvpv tsollkvpv_id 2 N real of rows in table is O stefan tsollkvpv tsollkvpv_idx_731 0 Y stefan tsollkvpv tsollkvpv_idx_731 2 N real of rows in table is 0 stefan tsollkvpv tsollkvpv_idx_732 0 Y stefan tsollkvpv tsollkvpv_idx_732 2 N real of rows in table is 0 stefan tsollkvpv tsollkvpv_idx_733 0 Y stefan tsollkvpv tsollkvpv_idx_733 2 N real of rows in table is 0 stefan tsollkvpv tsollkvpv_idx_pers2 0 Y Die Ausgabezeilen sind durch Doppelpunkt voneinander getrennt In der ersten Spalte befindet sich der Tabellenname mit Eigent mer gefolgt vom Indexnamen In der dritten Spalte befindet sich die jeweilige Optimierereinstellung OPTCOMPIND O bzw OPTCOMPIND 2 In der vierten Spalte befindet sich die Information ob der Index seitens des Optimierers verwendet wird Y Yes N No und in der letzten Spalte ggf ein Kommentar was die m gliche Ursache f r das Verhalten ist 42 4 Bedienungsanleitung ifddt Benutzerhandbuch iidsp 4 29 Zusatzoptionen bei Storage Dateien Sofern Sie die Option S Storage Datei gew h
59. nen F datei Beim Entladen von Tabellen oder ganzer Datenbanken k nnen Sie anstelle des Entladens der jeweiligen Tabelle auch freie SELECT Anweisungen festlegen Dies ist beispielsweise beim Neuaufbau einer Datenbank sinnvoll wenn Stammdaten aus anderen Tabellen geladen werden sollen oder wenn beim Entladen nur bestimmte Spalten ben tigt werden Hierzu legen Sie eine Steuerdatei an in welcher f r jede zu transformierende Tabelle eine eigene SELECT Anweisung oder eine Liste der zu entladenden Spalten definiert wird Die SELECT Anweisung darf beliebig geartet sein muss jedoch zumindest prinzipiell S tze zur ckliefern k nnen Die nachfolgende Tabelle beschreibt einen m glichen Aufbau 36 4 Bedienungsanleitung ifddt Benutzerhandbuch iidsp Transformation file Statistic Export buchung s buchung unl select from buchung where mod buch_id 10 7 deltasec c deltasec unl seq reason delta gt 1 Kommentarzeilen beginnen mit einer Raute In der ersten durch Semikolon getrennten Spalten befindet sich der Name der zu entladenden Tabelle gefolgt von einem s wenn es sich nachfolgend um eine SELECT Anweisung handelt Oder um ein c wenn nachfolgend eine Auflistung der zu selektierenden Spalten folgt Die dritte Spalte enth lt den Pfadnamen der Datei in welche die Daten entladen werden Im Falle einer Spaltenauflistung enth lt die letzte Spalte eine optionale WHERE Klausel Beim Entladen werden die hier genannten Tabellen nicht st
60. nerieren e Tabellen entladen und ein Skript zum Laden dieser Tabellen erstellen e Indizes einer ganzen Datenbank oder einzelner Tabellen reorganisieren Je nachdem welche der Hauptfunktionen Sie nutzen m chten m ssen Sie das Programm ifddt mit unterschiedlichen Optionen starten Die Anwendung dieser Optionen wird im Laufe dieses Kapitels erkl rt 4 1 Datenbank Schema erstellen Zum Erstellen eines Datenbankschemas gen gt es ifddt mit der Option d gefolgt von einem Datenbanknamen zu starten ifddt d stores7 Standardm ig wird das Schema zur Erstellung der ganzen Datenbank ausgegeben Bei den Constraint Definitionen werden standardm ig deren Namen ausgegeben auch dann wenn es sich um die vom System selbst generierten Namen handelt Ohne Angabe einer weiteren Option fehlen in der Ausgabe alle server spezifischen Tabelleneigenschaften Diese k nnen Sie mit Hilfe der Option s aktivieren ifddt d stores 7 s 4 2 Serverspezifische Tabelleneigenschaften ausgeben s Zu den serverspezifischen Tabelleneigenschaften geh ren e die First und Next Extent Size Definitionen e die Ziel DbSpaces der Tabellen 4 Bedienungsanleitung 21 iidsp ifddt Benutzerhandbuch e der Sperrmodus der Tabellen e die Fragmentierungsausdr cke f r die Tabellen Diese Tabelleneigenschaften werden seitens ifddt ausgegeben sofern Sie die Option s auf der Kommandozeile angeben Wenn Sie die server spezifischen Ausgaben aktivieren so
61. ng Wird dabei erkannt dass die Zielversion nicht mit der aktuellen Version identisch ist so werden alle zur Migration erforderlichen Schritte eingeleitet Hierzu geh rt die automatische Korrektur der Extent Gr en wenn von der Version 7 x auf eine Version gr sser gleich 9 x umgestellt wird Beginnend mit der Version 9 x werden im Informix Dynamic Server alle Indizes als detached Indizes angelegt Waren in Ihrer Version 7 x die Indizes noch attached so m ssen die Extent Gr en nach unten korrigiert werden Zudem hat sich in der Version 9 x der Tabellenname sysindexes auf sysindices ge ndert Dies wird bei der Korrektur der Extent Gr en der Systemtabellen ber cksichtigt Weitere nderungen finden sich vor allem innerhalb der High Performance Loader Datenbank bei den Datentypen usw Sofern Sie auf eine Version 11 50 migrieren geben Sie in der Kommandozeile die Option wie folgt an ifddt d storesdemo s u 11 50UC4A 4 9 Entladen einer Datenbank N Beim Entladen legt ifddt ein Unterverzeichnis an in dem die Dateien mit den Tabellendaten sowie die Schema Datei zur Wiederanlage der Datenbank gespeichert werden Den Namen des Unterverzeichnisses w hlen Sie selbst in der Kommandozeile hinter der Option N Sorgen Sie vor dem Aufruf daf r dass das Unterverzeichnis noch nicht existiert und dass Sie die Benutzerrechte haben um das Verzeichnis anzulegen Die Tabellendaten werden in so genannte unload Dateien entladen deren Datei
62. nweisungsskripts m ssen Sie dabei folgende Kommandos auf dem Rechner munich absetzen INFORMIXSERVER berlin_tli ifddt d stores7 s i c C n new gt stores7 sql Ist das Anweisungsskript einmal erstellt so k nnen Sie alle weiteren Schritte auf dem Ziel System durchf hren Hierzu geh rt nun noch das Anlegen der Datenbank und die Durchf hrung des Anweisungsskripts Gehen wir davon aus dass die Ausgangs Datenbank bereits ohne Transaktionssteuerung arbeitet so m ssen also zum Kopieren der Datenbank noch folgende Schritte durchgef hrt werden SINFORMIXSERVER muc_soc Secho create database stores7 in dbspacel dbaccess Sdbaccess e stores7 stores7 gt stores out 2 gt stores err Da wir beim Erzeugen des Anweisungsskripts die Option s angegeben haben wird das Anweisungsskript die DbSpace Namen des Ausgangs Systems bernehmen Damit die bernahme erfolgreich abl uft ist es daher erforderlich dass im Ziel System die gleichen DbSpaces vorhanden sind und hinreichend freien Speicherplatz f r die Tabellen aufweisen Dennoch ist es sinnvoll die beim Kopieren der Datenbank m glicherweise entstehenden Fehlermeldungen in einer Datei zu protokollieren und abschlie end zu analysieren Suchen Sie in den Protokolldateien stores out und stores err nach allen Stellen die das Wort Error enthalten L uft alles fehlerfrei ab so existiert abschlie end eine Datenbank namens stores7 im Datenbankserver muc_soc die a
63. obei eine gleichm ige Nutzung der definierten DbSpaces angestrebt wird Ist jedoch keiner der definierten DbSpaces hinreichend gro um diese Tabelle aufzunehmen so wird die Tabelle ber die definierten DbSpaces im Round Robin Modus fragmentiert Die in der DbSpace Option der Kommandozeile definierten DbSpaces m ssen im aktuellen Server System nicht enthalten sein Daher ist bei der DbSpace Option neben dem DbSpace Namen auch die DbSpace Gr e in der Einheit Kilobyte anzugeben Existiert ein DbSpace gleichen Namens im aktuellen 2 Funktionsweise ifddt Benutzerhandbuch iidsp Server System so wird die in der DbSpace Option angegebene DbSpace Gr e als ma gebliche Gr e verstanden Fehlt die Angabe der Option D in der Kommandozeile so wird die Tabelle in dem DbSpace angelegt in dem auch die Datenbank angelegt wurde Die storage Datei wird seitens ifddt stets um fehlende Eintr ge erg nzt und mit aktuellen Werten abgeglichen Das hei t dass fehlende Tabellen fehlende Next Extent oder DbSpace Angaben nachgetragen und neu berechnete Extent Gr en modifiziert werden Daher ist es auch notwendig dass Sie als aufrufender Benutzer die Rechte haben m ssen die storage Datei zu modifizieren Die alte storage Datei wird jedoch stets unter dem gleichen Pfadnamen mit der Endung bak kopiert Die Tatsache dass ifddt die storage Datei um fehlende Eintr ge erg nzt hilft Ihnen bei der Erstellung einer Standard storage Datei Die
64. r e aller tempor ren Dateien entspricht der Gesamtgr e der letztendlich erstellten SQOL Schema Datei Erst im letzten Schritt werden die Anweisungen aus den verschiedenen tempor ren Dateien sortiert gelesen und in die Ausgabe bertragen Aufgrund dieser Sortierung kann eine gewisse Zeit verstreichen bis die ersten Tabellenbefehle in der Ausgabe erscheinen 2 1 Funktionsbeschreibung ifddt erzeugt eine Schema Datei zur Anlage einer Datenbank oder aber zur Anlage bestimmter Tabellen einer Datenbank optional auch die zugeh rigen Lade Anweisungen In der weiteren Beschreibung wird grunds tzlich unterschieden zwischen den Schemata zum Erstellen ganzer Datenbanken und denen zur Erstellung einzelner Tabellen Sollen Datenbanken oder einzelne Tabellen kopiert werden so kann dies entweder direkt oder ber eine Zwischenablage geschehen Das Erstellen einer Zwischenablage geschieht mit Hilfe so genannter unload Dateien und wird daher im Folgenden als Entladen bezeichnet 2 Funktionsweise 5 iidsp ifddt Benutzerhandbuch 2 2 Extent Gr en Die bei der Tabellenanlage einzusetzenden Extent Gr en h ngen von folgenden Faktoren ab ifddt ermittelt die aktuelle Tabellengr e aus den Partition Informationen der sysmaster Datenbank Dar ber hinaus kann die ausgegebene Extent Gr e mit Hilfe der Extent Option in der Kommandozeile oder mit Hilfe einer Definition in der storage Datei ver ndert werden W hrend sich die Extent Option
65. r Tabellendaten nach der 4 Bedienungsanleitung 27 iidsp ifddt Benutzerhandbuch bernahme nicht gew hrleistet Beim Entladen schreibt ifddt die SOL Anweisungen zur Anlage der Datenbank nicht auf die Standardausgabe sondern erzeugt innerhalb des gew hlten Unterverzeichnisses eine Anweisungsdatei mit dem Namen datenbank sql Diese Anweisungsdatei enth lt abschlie end nicht nur die SQL Anweisungen zur Anlage des Datenbankschemas sondern auch die entsprechenden Lade Anweisungen zum Laden der einzelnen Tabellen Wurden f r eine Tabelle mehrere unload Dateien erzeugt so findet man in der Anweisungsdatei f r diese gro en Tabellen entsprechend mehrere Lade Anweisungen Beachten Sie bitte dass die Anweisungsdatei nicht den Befehl zur Anlage der Datenbank enth lt Wollen Sie mit Hilfe der Anweisungsdatei die Datenbank in einem anderen oder im gleichen Server erneut anlegen so m ssten Sie die Datenbank vorab erst manuell anlegen Beim Entladen k nnen Sie mit Ausnahme der Optionen t und n alle weiteren Optionen anwenden Ein typisches Beispiel k nnte folgenderma en aussehen rm r tmp st exp ifddt d stores7 e 2 S munich_shm ddt N tmp st exp Entladen wird dabei die Datenbank namens stores7 in das Verzeichnis fmp st exp Alle in der Storage Datei munich_shm ddt definierten Gr en und DbSpace Angaben werden im generierten SQL Skript ber cksichtigt und die Extent Angaben werden mit dem Faktor 2 0 multipliziert Neben d
66. rmix erstellt werden dbaccess sysmaster lt lt eof create table dbsmap olddbs varchar 128 newdbs varchar 128 eof Sie k nnen die Tabelle dbsmap auch mit weiteren Spalten ausstatten und die Reihenfolge der Spaltendefinition spielt keine Rolle Haben Sie die Tabelle dbsmap einmal erstellt so k nnen Sie diese mit beliebigen DbSpace Namen f llen Befindet sich eine Tabelle in einem DbSpace dessen Name mit einem Wert der Tabellenspalte dbsmap olddbs bereinstimmt so verwendet ifddt bei der Ausgabe den Wert den Sie in der Spalte dbsmap newdbs eingetragen haben Es spielt dabei keine Rolle ob der entsprechende DbSpace im aktuellen Server existiert oder nicht Es ist auch durchaus m glich dass mehrere alte DbSpace Namen auf einen gemeinsamen neuen DbSpace Namen verweisen Diese Option ist u erst praktisch wenn Sie fters Tabellen in ein anderes System bertragen m ssen das andere DbSpace Namen aufweist 4 31 Tabellenliste generieren y datei M chten Sie beim direkten Kopieren eine Liste mit den Tabellen erstellen welche letztlich kopiert werden so k nnen Sie auf der Kommandozeile die Option y gefolgt von einem 44 4 Bedienungsanleitung ifddt Benutzerhandbuch iidsp Pfadnamen angeben Die dabei generierte Datei kann sp ter auch als Eingabedatei f r das Programm ifddtrows dienen Mittels ifddtrows l sst sich die bergebene Tabellenliste erweitern um die reale Datensatzanzahl je Tabelle Diese Informatione
67. s genutzt werden k nnen Es ist daher empfehlenswert auf dem Ziel Server den f r PDQ und Sortieraufgaben reservierten Speicher vor dem Laden entsprechend hoch zu setzen Sie erreichen dies indem Sie auf dem Ziel Server vor dem Laden das Kommando onmode absetzen Sofern das Erstellen der Datenbank auf dem Ziel Server ein exklusiver Vorgang ist k nnen Sie bis zu 80 des bereit gestellten virtuellen Shared Memories f r PDQ Aufgaben einsetzen Setzen Sie in diesem Fall folgende Kommandos ab onmode M SpeicherInKilobyte onmode Q 1 SpeicherInKilobyte sollte dabei circa 0 8 x SHMVIRTSIZE sein 4 24 Indizes auslagern i datei Sie k nnen die Anlage expliziter Indizes grunds tzlich in eine separate Datei auslagern Diese Option sollten Sie jedoch vermeiden sofern Ihre Datenbank implizite Indizes aufweist Die Option ist lediglich sinnvoll wenn Sie die expliziten Indizes in irgendeiner Form manuell nachbearbeiten z B fragmentieren m chten Vermeiden Sie das Auslagern der Indizes auch dann wenn Sie die Datenbank oder Tabellen entladen da die Zieldatei f r die ausgelagerten Indizes sich nicht in dem f r das Entladen erzeugten Unterverzeichnisses befinden kann Zum Auslagern der Indizes m ssen Sie im Anschluss an die Option i den Pfadnamen f r die Indexbefehle angeben 4 Bedienungsanleitung 39 iidsp ifddt Benutzerhandbuch 4 25 Indizes reorganisieren I datei Bisweilen werden Sie in Ihren Informix Instanzen feststelle
68. sofern notwendig die Datei rhosts im jeweiligen Heimatverzeichnis des Benutzers Tragen Sie dort den Hostnamen des remote Rechners ein Zum berpr fen ob die Verbindung wechselseitig funktioniert k nnen Sie folgende Abfrage mittels dbaccess probieren Auf der Maschine munich dbaccess sysmaster lt lt eof select count from systables a sysmaster berlin systables b where a tabid b tabid eof Funktioniert der Test fehlerfrei so k nnen Sie den Test entsprechend auf der anderen Maschine vornehmen Tritt jedoch ein Fehler auf so k nnte dies m glicherweise an falschen Rechnernamen oder IP Adressen liegen Analysieren Sie dazu die begleitende Fehlermeldung und kontaktieren Sie ggf den technischen IBM Informix Support 5 2 ONCONFIG Konfigurationsparameter Um eine schnelle Index Generierung zu erzielen werden bei der Daten bernahme seitens ifddt die PDQ Option aktiviert Diese k nnen sich nur dann positiv auf die Laufzeit auswirken wenn Sie entweder in Ihrer Konfigurationsdatei die Parameter 5 Administrative Anforderungen 53 iidsp ifddt Benutzerhandbuch DS_TOTAL_MEMORY DS_MAX_OUERIES setzen oder die Werte dieser beiden Parameter on line mit Hilfe des Kommandos onmode setzen Da die nderung mittels des Kommandos onmode nicht dauerhaft ist empfehlen wir Ihnen die Verwendung von onmode Setzen Sie den Wert f r DS_MAX_QUERIES auf 1 bzw setzen Sie den Befehl onmode Q 1 ab da
69. t die Installationsdateien Enth lt Nachrichtentexte aller Art Enth lt Freigabemitteilungen 1 4 Installation der Software Zur weiteren Installation der ifddt Software sollten Sie nun die Seriennummer und den Activation Key Ihres Software Lizenzvertrages bereithalten Beide Werte befinden sich auf dem Aufkleber auf der R ckseite Ihres Lizenzvertrages und werden w hrend der nachfolgenden Installationsroutine abgefragt Starten Sie das Installationsprogramm wie folgt installifddt Kurz darauf erscheint die Meldung stallation Script This installation procedure must be run by root super user It will change the owner group and mode of all files of this package in this directory There must be a user informix and a group informix known to the system Press RETURN to continue or the interrupt key usually CTRL C or DEL to abort 2 1 Installationsanleitung ifddt Benutzerhandbuch iidsp Dr cken Sie an dieser Stelle die RETURN Taste und es folgt die Aufforderung zur Eingabe Ihrer Seriennummer Enter your serial number for example IFS R999999 gt Geben Sie hier Ihre Seriennummer ein Buchstaben sollten dabei stets gro geschrieben werden Best tigen Sie Ihre Eingabe mit der RETURN Taste und es erscheint die Aufforderung zur Eingabe des Aktivierungsschl ssels Enter your serial number KEY uppercase letters only gt Schlie en Sie die Eingabe erneut mit der
70. te wird der Tabellen bzw der Indexname eingetragen pe typ Die Angabe T in dieser Spalte bedeutet dass es sich um einen Tabelleneintrag handelt Der Wert I bedeutet dass es sich um einen B Tree Index handelt cache Enth lt die Spalte cache den Buchstaben R so soll die Tabelle resistent im Hauptspeicher geladen werden sobald der Datenbankserver gestartet wird Diese Angabe ist optional und nur im Zusammenhang mit dem Central Monitoring System aktiv sperrebene Die Spalte sperrebene kann entweder ein P f r Page Lock oder den Buchstaben R f r Row Lock enthalten Bei Indexangaben ist diese Spalte ohne Bedeutung firstextent Die Spalte firstextent k nnen Sie mit der initialen Extent Gr e der Tabelle versehen Ist die Angabe jedoch kleiner als die tats chliche momentane Tabellengr e so wird diese Angabe ignoriert Die Extent Gr en m ssen Sie in der Einheit Kilobyte angeben Sofern Sie neben der storage Datei auch die Extent Option in der Kommandozeile angegeben haben so wird die in der First Extent Spalte definierte Gr e mit dem Extent Faktor der Kommandozeile multipliziert nextextent U 2 Funktionsweise 7 wachstum space ifddt Benutzerhandbuch Die Spalte nextextent belegen Sie mit der Gr e der weiteren Extents Falls Sie diese Spalte leer lassen so verwendet ifddt stets ein Drittel der First Extent Gr e Die wachstum Spalte kann optional mit der Anzahl der Datens tze b
71. tet Die Tabellendaten werden beim Kopieren direkt von der Ausgangs Datenbank in eine Ziel Datenbank bertragen F r diese bertragungsform m ssen mehrere Voraussetzungen erf llt sein Um eine solche bertragung gew hrleisten zu k nnen m ssen sich die Ausgangs Datenbank sowie die Ziel Datenbank im gleichen Transaktions Modus befinden In der Regel werden beide Datenbanken ohne Transaktionssteuerung arbeiten bzw wird der Modus vor dem eigentlichen Kopiervorgang mit Hilfe des Befehls ondblog nolog datenbankname umgeschaltet Sofern es sich bei der Zielversion um einen IBM Informix Dynamic Server der Version 7 31 bzw 9 21 und gr er handelt besteht keine Notwendigkeit den Transaktionsmodus eigens auf NO LOGGING umzuschalten ifddt legt dabei alle Tabellen zun chst im raw Modus an und ndert den Typ nach dem Laden der Tabellen automatisch Beide Datenbank Systeme m ssen sich entweder innerhalb einer IBM Informix Dynamic Server Instanz befinden oder via einem Netz miteinander verbunden sein und eine direkte Kommunikation beider Server Instanzen muss ohne Passwortabfrage m glich sein Lesen Sie mehr hierzu im Abschnitt Administrative Anforderungen Zusammen mit der Option n k nnen Sie den Befehl zur Anlage einer neuen Datenbank erzwingen Dazu m ssen Sie einen der nachfolgenden Buchstaben unmittelbar hinter n angeben Option resultierender Transaktionsmodus Ohne Logging Buffered Logging Unbuffered Logging U
72. tionen festlegen D dbspacelist 1 43 4 29 2 Extent Berechnung anhand monatlicher Wachstumswerte N OD 109 SEORNDRONSUE SEIEN OR RETSPELRUCGLSEE R BREPHESERUERCIEREN 44 4 30 DbSpase Mapping ae eier 44 4 3 Tabellgnliste generieren y datel een 44 392 Tabe ens ehe API SA ee 45 d Update SSe SU ee ah 46 4 34 Cache Optimierung Daun 46 4 35 Datenbanksperre beim Entladen vermeiden 1 s eossneosseesssssseseseeeseersresseesses 46 4 36 High Performance Loader einsetzen H datenbank u uuuuununssunn 47 4 37 Oplisnen zur Parallelyerarbeiting I urn 49 4 38 Datenbanknamen spezifizieren g dbs name nuuuunnnnnenenenand 49 4 39 Autoseleet der Parallelverarbeiung pp I 49 Inhaltsverzeichnis 4 Bedienungsanleitung 4 40 Anzahl der parallelen Prozesse festlegen g anzahl_prozesse 50 441 PDO Proritat festigen g pd hrcsannin ani EE ANN 50 4 42 Ausgabe f r Oracle erzeusen p Ora Yan s1 4 43 inf_storage Datei f r BaaN Umgebungen erzeugen uursersenesnnersnnensnersnnennnn Sl 5 Administrative Anforderungen ssissoensersenssneisesniuesinennn nee 53 5 1 Einrichten einer Sever Server Verbidiie ann 53 3 2 ONCONF K Konigurations parame teb nn 53 5 3 Beschleunigung des Ziel Seren a aa 54 54 Voraussetzungen der Web Server Konfiguratioi anna 54 I Pesper UL una a Rie 33 6 Bekannte DIEE A E E E ee 57 1 Installationsanleitung Bitte f hren Sie die Installation des Softwareprodukts ifddt entsprec
Download Pdf Manuals
Related Search
Related Contents
Instruction Manual - Bauanleitung - Manuel de montage 設計コンテスト2015本課題 設計仕様 IBM BladeCenter HX5 7873 Product Info Du mode d`existence des outils pour apprendre RSS-243, Active Medical Implants Operating in the PSC_MO2014_L1 AREA OVEST - Bandi on-line ニュートン(N)表示 Copyright © All rights reserved.
Failed to retrieve file