Migration von Informix zu PostgreSQL

Dieses dreitägige Seminar vermittelt Methodik, Werkzeuge und Best Practices für die Migration von IBM Informix zu PostgreSQL. Du lernst die Architekturunterschiede, das Datentyp-Mapping und die Portierung von SPL zu PL/pgSQL kennen, dazu Strategien für Datenübernahme, Testing und den laufenden PostgreSQL-Betrieb. Am Ende hast du das Rüstzeug für eine strukturierte Informix-Migration.

Für wen ist dieses Seminar

Das Seminar richtet sich an Datenbankadministratoren (DBAs), Datenbankentwickler, Systemarchitekten und Migrationsberater, die eine Informix-Umgebung nach PostgreSQL überführen wollen. Das Angebot richtet sich an Unternehmen, Behörden und Selbstständige.

Was du mitbringen solltest

Du bringst fundierte Erfahrung in der Administration und Entwicklung mit IBM Informix (SQL, SPL) sowie grundlegende relationale Datenbankkenntnisse mit. Geschult wird auf der jeweils aktuellen Version; bei Inhouse-Seminaren gern auch auf der Version, die ihr im Einsatz habt.

Detaillierte Inhalte

Architektur- und Konzeptvergleich

  • Systemarchitektur: Informix Instanz/Server vs. PostgreSQL Cluster
  • Speichermodell: Dbspaces und Chunks vs. Tablespaces und Data Files
  • Transaktionsprotokollierung: Logical Logs und Physical Logs vs. Write-Ahead Logging (WAL)
  • Parallelverarbeitung: Informix PDQ (Parallel Database Query) vs. PostgreSQL Parallel Queries
  • Systemkataloge: Informix sysmaster und Systemtabellen vs. Information Schema und pg_catalog

Migrationsstrategien und Werkzeuge

  • Phasen eines Migrationsprojekts (Assessment, Schema, Daten, Code, Testing, Cutover)
  • Migrationsansätze: Big Bang vs. Phasenweise Migration
  • Werkzeuge zur Migration: AWS Schema Conversion Tool (SCT), Ispirer, ESF Database Migration Toolkit
  • Informix-Bordmittel für den Datenexport (dbexport, UNLOAD)
  • Kompatibilitätsbewertung und Aufwandsschätzung

Schema- und Strukturmigration

  • Mapping der Datentypen (z. B. DATETIME YEAR TO FRACTION zu TIMESTAMP, LVARCHAR zu VARCHAR/TEXT, BYTE/TEXT zu BYTEA/TEXT)
  • Konvertierung von SERIAL, SERIAL8 und BIGSERIAL zu PostgreSQL SERIAL oder IDENTITY-Spalten
  • Übertragung von Constraints (Primary Key, Foreign Key, Check, Unique)
  • Index-Architektur: Informix B-Tree und Fragmentierung vs. PostgreSQL B-Tree und Partitionierung
  • Umsetzung von Informix Table Fragmentation in PostgreSQL Table Partitioning
  • Umgang mit Synonymen und temporären Tabellen
  • Benutzer, Rollen und Rechte: Informix-Benutzer, Rollen und Privilegien auf PostgreSQL-Rollen und das GRANT-Konzept übertragen
  • Zeichensätze und Sortierung: Informix vergleicht Zeichenketten wie PostgreSQL standardmäßig unter Beachtung der Groß-/Kleinschreibung — hier entsteht kein zusätzlicher Collation-Anpassungsbedarf wie bei manchen anderen Quellsystemen, wohl aber bei Locale- und Encoding-Umstellung (siehe Datenübernahme)

Code-Migration: Informix SPL zu PL/pgSQL

Wer PL/pgSQL nicht nur portieren, sondern von Grund auf lernen möchte, findet das im Seminar PL/pgSQL-Programmierung.

  • Syntaxunterschiede zwischen Informix SPL und PostgreSQL PL/pgSQL
  • Migration von Stored Procedures und Triggern
  • Konvertierung von Schleifen und Cursorn (FOREACH-Schleifen in SPL zu PL/pgSQL-Pendants)
  • Transaktionssteuerung und Exception Handling in Prozeduren
  • Ersetzen von Informix-spezifischen Funktionen (z. B. TODAY, CURRENT, NVL, bitweise Operationen)
  • Anpassung von dynamischem SQL und Rückgabewerten (RETURN WITH RESUME zu RETURN NEXT)

Datenübernahme und Synchronisation

  • Initiale Datenmigration: Export mit UNLOAD und Import via PostgreSQL COPY
  • Behandlung von Zeichensätzen und Lokalisierung: Informix GLS (Global Language Support) zu PostgreSQL Encoding (UTF-8) und Collations
  • Konvertierung und Transfer von Large Objects (Smart Large Objects, BLOBs, CLOBs)
  • Change Data Capture (CDC) für ausfallarme Migrationen (Near-Zero Downtime)

Testing, Validierung und Go-Live

  • Strategien zur Verifizierung der Datenkonsistenz (Row Counts, Hash-Summen)
  • Funktionstests für migrierte Geschäftslogik und Schnittstellen
  • Last- und Performancetests auf dem neuen System
  • Anwendungsseitige Anpassungen vor dem Cutover: JDBC-/ODBC-Treiber, Verbindungszeichenfolgen und ORM-Konfiguration auf PostgreSQL umstellen und testen
  • Cutover-Planung und Rollback-Szenarien

Performance-Optimierung und PostgreSQL-Betrieb

  • Wichtige Tuning-Parameter in der postgresql.conf im Vergleich zur Informix onconfig
  • Das Autovacuum-Konzept als Ersatz für Informix Update Statistics und manuelle Wartungsläufe
  • Performance-Analyse: Informix onstat-Utilities vs. PostgreSQL Views (pg_stat_activity, pg_stat_statements)
  • Anpassung von Backup- und Recovery-Strategien (Ablösung von ontape/onbar durch pg_dump und kontinuierliche Archivierung via pgBackRest); für Multi-Cluster-Szenarien lohnt zusätzlich ein Blick auf das quelloffene Werkzeug pg-clusterbackup
  • Zeitgesteuerte Jobs: Ablösung von Tasks des Informix-Schedulers (Datenbank sysadmin) durch pg_cron oder einen externen Scheduler
  • Hochverfügbarkeit: Ablösung von Informix HDR/RSS durch PostgreSQL Streaming Replication und Patroni

Dauer: 3 Tage

Was du danach kannst

  • Architekturunterschiede zwischen Informix und PostgreSQL einordnen und eine Migration methodisch planen
  • Schema, Datentypen, Constraints und Table Fragmentation von Informix nach PostgreSQL übertragen
  • SPL-Code inklusive Prozeduren, Triggern und Cursorn zu PL/pgSQL portieren
  • Benutzer, Rollen, Rechte und zeitgesteuerte Jobs in der neuen Umgebung nachbilden
  • Eine Migration mit minimaler Downtime über Change Data Capture umsetzen

Verwandte Seminare

Dein Dozent

Frank Glück schult seit mehr als 30 Jahren und programmiert seit fast 40 Jahren. Seit 1999 ist er auch als Dozent für die GFU tätig. Seit 1999 begleitet, coacht oder führt er Migrationen nach PostgreSQL durch — aus Oracle, SQL Server, Db2, MS Access und eben auch Informix, vor allem in Konzernen und Behörden.

Häufige Fragen (FAQ)

Wie aufwendig ist die Migration von Informix SPL zu PostgreSQL PL/pgSQL?

Der Aufwand hängt von der Zahl gespeicherter Prozeduren und proprietärer Konstrukte ab. Während grundlegende Kontrollstrukturen ähnlich sind, erfordern Informix-Besonderheiten wie FOREACH-Schleifen, RETURN WITH RESUME (für Ergebnislisten) und Informix-spezifische Datums-/Zeichenkettenfunktionen eine manuelle oder skriptgestützte Übertragung in RETURN NEXT und PL/pgSQL-Syntax.

Wie wird Informix Table Fragmentation in PostgreSQL abgebildet?

Informix Fragmentation (nach Expression oder Round-Robin) wird in PostgreSQL über natives Declarative Table Partitioning (Range, List oder Hash) realisiert. Dies sorgt für identische Performancevorteile beim Partition Pruning und vereinfacht die administrative Wartung großer Tabellenbestände.

Kann die Migration von Informix auf PostgreSQL mit minimaler Downtime erfolgen?

Ja, für zeitkritische Systeme kombiniert man einen initialen Massenexport (UNLOAD und PostgreSQL COPY) mit Change Data Capture (CDC) oder Replikationswerkzeugen. Dadurch werden laufende Änderungen bis zum finalen Cutover kontinuierlich nachrepliziert, sodass das Wartungsfenster auf wenige Minuten schrumpft.


Individuell anfragen