{"guid":"0159ed8f-7619-5fbe-8c44-5a484af2f9dc","title":"Migrating Legacy and Proprietary Databases to PostgreSQL","subtitle":null,"slug":"clt26-284-migrating-legacy-and-proprietary-databases-to-postgresql","link":"https://chemnitzer.linux-tage.de/2026/de/programm/beitrag/284","description":"European organisations and companies are increasingly re-evaluating proprietary database dependencies as digital sovereignty becomes more critical than ever. This talk serves as a pragmatic field guide for migrating from legacy or vendor-locked databases (Oracle, SQL Server, Sybase ASE, Db2) to PostgreSQL.\n\nDrawing from years of hands-on experience in heterogeneous migrations and tool development, we will explore a comprehensive decision framework for successful transitions. The session compares offline strategies (dump/restore, ETL, bulk COPY) against online, near-zero-downtime approaches (CDC, logical replication, dual-write), with a special focus on designing reversible cutovers to minimize operational risk.\n\nWe will discuss a toolbox for schema and SQL translation, addressing challenges like LOBs, time zones, collations, and procedural code conversion. We will show validation techniques leveraging checksums, reconciliation queries, and end-to-end testing beyond simple row counts. The talk with show a comparative matrix of different solutions, and highlight lessons learned from real-world migrations ranging from small applications to multi-TB enterprise systems.\n\nLicensed to the public under http://creativecommons.org/licenses/by/4.0","original_language":"eng","persons":["Josef Machytka"],"view_count":76,"promoted":false,"date":"2026-03-29T15:00:00.000+02:00","release_date":"2026-03-29T00:00:00.000+01:00","updated_at":"2026-04-20T13:45:06.944+02:00","tags":["59","2026","clt26","Vortrag","V4","clt26-eng","Day 2"],"length":2873,"duration":2873,"thumb_url":"https://static.media.ccc.de/media/events/clt/2026/59-0159ed8f-7619-5fbe-8c44-5a484af2f9dc.jpg","poster_url":"https://static.media.ccc.de/media/events/clt/2026/59-0159ed8f-7619-5fbe-8c44-5a484af2f9dc_preview.jpg","timeline_url":"https://static.media.ccc.de/media/events/clt/2026/59-0159ed8f-7619-5fbe-8c44-5a484af2f9dc.timeline.jpg","thumbnails_url":"https://static.media.ccc.de/media/events/clt/2026/59-0159ed8f-7619-5fbe-8c44-5a484af2f9dc.thumbnails.vtt","frontend_link":"https://media.ccc.de/v/clt26-284-migrating-legacy-and-proprietary-databases-to-postgresql","url":"https://api.media.ccc.de/public/events/0159ed8f-7619-5fbe-8c44-5a484af2f9dc","conference_title":"Chemnitzer Linux-Tage 2026","conference_url":"https://api.media.ccc.de/public/conferences/clt26","related":[],"recordings":[{"size":247,"length":2873,"mime_type":"video/webm","language":"eng","filename":"clt26-59-eng-Migrating_Legacy_and_Proprietary_Databases_to_PostgreSQL_webm-hd.webm","state":"new","folder":"webm-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2026-03-30T01:50:36.028+02:00","recording_url":"https://cdn.media.ccc.de/events/clt/2026/webm-hd/clt26-59-eng-Migrating_Legacy_and_Proprietary_Databases_to_PostgreSQL_webm-hd.webm","url":"https://api.media.ccc.de/public/recordings/98079","event_url":"https://api.media.ccc.de/public/events/0159ed8f-7619-5fbe-8c44-5a484af2f9dc","conference_url":"https://api.media.ccc.de/public/conferences/clt26"},{"size":99,"length":2873,"mime_type":"video/webm","language":"eng","filename":"clt26-59-eng-Migrating_Legacy_and_Proprietary_Databases_to_PostgreSQL_webm-sd.webm","state":"new","folder":"webm-sd","high_quality":false,"width":720,"height":576,"updated_at":"2026-03-29T22:45:52.458+02:00","recording_url":"https://cdn.media.ccc.de/events/clt/2026/webm-sd/clt26-59-eng-Migrating_Legacy_and_Proprietary_Databases_to_PostgreSQL_webm-sd.webm","url":"https://api.media.ccc.de/public/recordings/98020","event_url":"https://api.media.ccc.de/public/events/0159ed8f-7619-5fbe-8c44-5a484af2f9dc","conference_url":"https://api.media.ccc.de/public/conferences/clt26"},{"size":43,"length":2873,"mime_type":"audio/mpeg","language":"eng","filename":"clt26-59-eng-Migrating_Legacy_and_Proprietary_Databases_to_PostgreSQL_mp3.mp3","state":"new","folder":"mp3","high_quality":false,"width":0,"height":0,"updated_at":"2026-03-29T19:47:31.788+02:00","recording_url":"https://cdn.media.ccc.de/events/clt/2026/mp3/clt26-59-eng-Migrating_Legacy_and_Proprietary_Databases_to_PostgreSQL_mp3.mp3","url":"https://api.media.ccc.de/public/recordings/97913","event_url":"https://api.media.ccc.de/public/events/0159ed8f-7619-5fbe-8c44-5a484af2f9dc","conference_url":"https://api.media.ccc.de/public/conferences/clt26"},{"size":26,"length":2873,"mime_type":"audio/opus","language":"eng","filename":"clt26-59-eng-Migrating_Legacy_and_Proprietary_Databases_to_PostgreSQL_opus.opus","state":"new","folder":"opus","high_quality":false,"width":0,"height":0,"updated_at":"2026-03-29T19:44:29.698+02:00","recording_url":"https://cdn.media.ccc.de/events/clt/2026/opus/clt26-59-eng-Migrating_Legacy_and_Proprietary_Databases_to_PostgreSQL_opus.opus","url":"https://api.media.ccc.de/public/recordings/97908","event_url":"https://api.media.ccc.de/public/events/0159ed8f-7619-5fbe-8c44-5a484af2f9dc","conference_url":"https://api.media.ccc.de/public/conferences/clt26"},{"size":89,"length":2873,"mime_type":"video/mp4","language":"eng","filename":"clt26-59-eng-Migrating_Legacy_and_Proprietary_Databases_to_PostgreSQL_sd.mp4","state":"new","folder":"h264-sd","high_quality":false,"width":720,"height":576,"updated_at":"2026-03-29T19:26:50.975+02:00","recording_url":"https://cdn.media.ccc.de/events/clt/2026/h264-sd/clt26-59-eng-Migrating_Legacy_and_Proprietary_Databases_to_PostgreSQL_sd.mp4","url":"https://api.media.ccc.de/public/recordings/97866","event_url":"https://api.media.ccc.de/public/events/0159ed8f-7619-5fbe-8c44-5a484af2f9dc","conference_url":"https://api.media.ccc.de/public/conferences/clt26"},{"size":200,"length":2873,"mime_type":"video/mp4","language":"eng","filename":"clt26-59-eng-Migrating_Legacy_and_Proprietary_Databases_to_PostgreSQL_hd.mp4","state":"new","folder":"h264-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2026-03-29T18:01:13.038+02:00","recording_url":"https://cdn.media.ccc.de/events/clt/2026/h264-hd/clt26-59-eng-Migrating_Legacy_and_Proprietary_Databases_to_PostgreSQL_hd.mp4","url":"https://api.media.ccc.de/public/recordings/97838","event_url":"https://api.media.ccc.de/public/events/0159ed8f-7619-5fbe-8c44-5a484af2f9dc","conference_url":"https://api.media.ccc.de/public/conferences/clt26"}]}