Motsvarigheten till binary
typ i MySQL är bytea
i PostgreSQL.
Du kan använda pgloader (enklaste sättet)
När du har installerat pgloader, skapa ett enkelt skript test.load
load database
from mysql://username:[email protected]/database_name
into postgresql://postgres:[email protected]/database_name
WITH include drop, create tables, create indexes, reset sequences
SET maintenance_work_mem to '128MB',
work_mem to '12MB'
CAST type binary TO bytea drop typemod using byte-vector-to-bytea;
Kör det i din terminal:
pgloader test.load
Ett annat sätt är att använda mysqldump
1. Dumpa det med hex-blob-alternativ
mysqldump -u username -p -h host --skip-quote-names --hex-blob --skip-triggers \
--compact --no-create-info your_db your_table > prepg.dump
2. Gör sed så att den kan infogas till dig bytea
typ kolumn
sed "s/0x\([0-9A-F]*\)/decode('\1','hex')/g" prepg.dump > pg.dump
3. Ladda in i din PostgreSQL-tabell
\i '/path_to_file/pg.dump'
Referens a>