en
Språk
  • en
  • cs
  • hu
  • it
  • es
  • fr
  • de
  • ru
Maskinoversettelse
  • bg
  • dk
  • nl
  • gr
  • il
  • jp
  • kr
  • Nei.
  • pl
  • tr

Migrer fra Postgres til MySQL

Introduksjon

For din skyld, Easy Project-serveradministratorer, har vi testet et par verktøy for DB-migrering fra Postgres til MySQL.

Den ene er en gratis åpen kildekode, men også eldre og med en betydelig ulempe. De andre var førsteklasses verktøy, med resultater som etter vår mening gjør det verdt å kjøpe.

Gratis alternativ - pg2mysql php-skript

Ansvarsfraskrivelse: Dette verktøyet ble utviklet av en tredjepart => det er IKKE et produkt av Easy Software, og er derfor IKKE GARANTERT.
Det testede verktøyet tilgjengelig på:
http://www.lightbox.ca/pg2mysql.php
Vi gjorde våre egne modifikasjoner på verktøyet for å få det til å fungere med php 7.4. Imidlertid er bruk fortsatt på egen risiko, og vi gir INGEN GARANTIER overhodet.

Fremgangsmåte for migrasjon

1. Last ned skriptet og pakk ut arkivet.

wget http://www.lightbox.ca/pg2mysql/pg2mysql-1.9.tar.bz2  (inneholder originalt skript fra forfatteren)
wget https://www.easyredmine.com/ER/media/knowledge-base/pg2mysql-1.9.zip (inneholder vårt modifiserte skript for php versjon 7.4)

tjære -xvf pg2mysql-1.9.tar.bz2(i tilfelle originalt manus fra forfatteren)
pakke ut pg2mysql-1.9.zip (i tilfelle vårt modifiserte skript for php versjon 7.4)

2. Installer php

sudo apt installer php7.4-cli (i tilfelle vårt modifiserte skript)

3. Lag en dump av PostgreSQL-database i .sql-format, sørg for at du bruker "--format p --inserts"

sudo -u postgres pg_dump --format p - setter inn DBNAME_HERE> /path/to/file.sql

4. Bytt til pg2mysql-1.9-mappen

cd pg2mysql-1.9 /

5. Kjør

php pg2mysql_cli.php /path/to/pd/dump/file.sql /path/where/to/save/mysql/file.sql

Du vil se noen linjer som

Fullført! 30820 linjer 5539 kvl biter

Merknader:
 - Nei, det er ikke perfekt
 - Ja, den forkaster ALLE lagrede prosedyrer
 - Ja, den forkaster ALLE spørsmål unntatt CREATE TABLE og INSERT INTO 
 - Ja, du kan sende forslag til oss via e-post: info [AT] lightbox.org
    - I e-post, vennligst inkluder Postgres-koden og forventet MySQL-kode
 - Hvis du har problemer med å lage postgres-dumpen din, må du bruke "--format p --inserts"
 - Standard utgangsmotor hvis MyISAM ikke er spesifisert "

6. Nå opprettes fil med endret sql dump. Vi anbefaler deg på det sterkeste å gå gjennom det og erstatte MyISAM til InnoDB overalt

7. Nå kan du gjenopprette denne dumpen i klar mysql-database.

8. Fordi (som forfatteren varslet oss om) skriptet ikke lagrer indekser, må du legge dem manuelt til hver tabell (det fungerer uten indekser, men det kan føre til alvorlige ytelsesproblemer). Det er en liste over alle indekser som skal eksistere i MySQL-tabeller generert av vanlig Easy Project-applikasjon. Du må legge til dem manuelt eller via eget tilpasset skript.

Det er andre gratis verktøy tilgjengelig på nettet. Våre testresultater var imidlertid ikke tilfredsstillende på disse.

Premium-verktøy - DB Convert for MySQL & PostgreSQL v. 4.3.5

Vi testet 3 premiumverktøy helt. DBConvert føltes som den mest passende, derfor beskriver vi de detaljerte trinnene for det.

Forberedelse:

1. Forsikre deg om at både MySQL- og PostgreSQL-databaser er tilgjengelige utenfra (du kan tillate det midlertidig).

2. Forsikre deg om at du kan logge på begge dbs med bruker og passord

3. Installer verktøyet fra - https://dbconvert.com/postgresql/mysql/

Start konvertering:

1. Start veiviseren.

2. Velg Kildedatabase:
PostgreSQL
Vertsnavn: ip eller domenenavn på serveren der postgres db er installert.
Port: hvis forskjellig fra standard
Brukernavn: brukernavn som db du skal konvertere er tilgjengelig
Passord: passord for brukeren ovenfor.

Klikk på Test tilkoblingsknapp. Appen vil sjekke at det er mulig å koble til kildedb-serveren med valgt bruker og passord. Hvis det er mulig, vil listen over databaser bli lastet opp - hent den riktige.

3. Klikk "Neste". Appen vil koble til postgres og motta listen over tabeller som er tilgjengelige i databasen. Du kan velge alle dem som skal konverteres, eller bare en / få av dem.

4. Vent litt, så blir du videresendt til neste trinn - MySQL-tilkoblingsinnstillinger.
Vertsnavn: ip eller domenenavn på serveren der mysql db er installert.
Port: hvis forskjellig fra standard
Brukernavn: brukernavn som db du skal konvertere er tilgjengelig
Passord: passord for brukeren ovenfor.

Klikk på Test tilkoblingsknapp. Appen vil sjekke at det er mulig å koble til kildedb-serveren med valgt bruker og passord. Hvis det er mulig, vil listen over databaser bli lastet opp - hent den riktige.

5. På neste trinn vil applikasjonen sjekke kildedatabasen og gi deg noen anbefalinger om hvordan du løser mulige problemer.

Vi har møtt neste problem:

Tabell "endrer" felt "handling". I original DB var det typen "CHAR (1)". Men standardverdien var '', så Mysql antok at den ikke var gyldig. Du kan velge Ny type. Vi har valgt CHAR (2) og klikk Neste. Problemet ble løst.

Gjenta lignende handlinger med andre urolige felt.

6. Klikk på Neste en gang til. Søknaden starter konvertering som viser total og nåværende fremgang. Vent til konverteringen er ferdig.

7. Klikk "Avslutt". Konvertering er gjort.

Forfatteren av dette verktøyet gir støtte til betalende kunder.

Pris: $ 149 (en gang)

Andre premiumalternativer

Vi testet også prøveversjoner av disse verktøyene. Her er generelle kommentarer om dem:

  • pgs2scld (https://www.convert-in.com/pgs2sql.htm)
    Ingen problemer med å koble til database (ingen grunn til å installere flere drivere eller sette dem opp på en eller annen måte eller noe annet). Har prøveversjon (i prøvemodus kopierer bare 50 poster per tabell, men sjekker alle linjene og viser samme fremgang som om hele databasen ble kopiert). Har intern feilsøking og viser mulige problemer med migrering. Har mange forskjellige alternativer som kan brukes under migrering. Har 24/7 support for betalte kunder. Bare brukergrensesnitt, Windows bare.
    Pris $ 49 (en gang).
  • ESF Database Migration Toolkit (https://www.dbsofts.com/articles/postgresql_to_mysql/)
    Ingen problemer med å koble til database (ingen grunn til å installere flere drivere eller sette dem opp på en eller annen måte eller noe annet). Har prøveversjon (i prøvemodus kopierer bare 50000 poster). Har intern feilsøking og viser mulige problemer med migrering. Har mange forskjellige alternativer som kan brukes under migrering. Har 24/7 support for betalte kunder. Bare brukergrensesnitt, Windows bare.
    Pris $ 322 (en gang).

Prøv Easy Project i 30 dager gratis prøveversjon

Fulle funksjoner, SSL-beskyttet, daglige sikkerhetskopier, i din geoposisjon