To, co zwykle robię w przypadku takich migracji, jest dwojakie:
- Wyodrębnij całą definicję bazy danych z MySQL i dostosuj ją do składni PostgreSQL.
- Przejdź do definicji bazy danych i przekształć ją, aby skorzystać z funkcjonalności PostgreSQL, która nie istnieje w MySQL.
Następnie wykonaj konwersję i napisz program w dowolnym języku, który najbardziej Ci odpowiada, i który zapewnia następujące efekty:
- Odczytuje dane z bazy danych MySQL.
- Wykonuje każdą niezbędną transformację na danych, które mają być przechowywane w bazie danych PostgreSQL.
- Zapisuje teraz przekształcone dane w bazie danych PostgreSQL.
Przeprojektuj tabele dla PostgreSQL, aby wykorzystać jego funkcje.
Jeśli po prostu robisz coś takiego jak użyj sed
skrypt do konwersji zrzutu SQL z jednego formatu na następny, jedyne co robisz to umieszczanie bazy danych MySQL na serwerze PostgreSQL. Możesz to zrobić i nadal przyniesie to pewne korzyści, ale jeśli masz zamiar przeprowadzić migrację, wykonaj pełną migrację.
Będzie to wymagać trochę więcej czasu poświęconego z góry, ale jeszcze nie spotkałem się z sytuacją, w której nie warto.