L'équivalent de binary
le type dans MySQL est bytea
dans PostgreSQL.
Vous pouvez utiliser pgloader (moyen le plus simple)
Après avoir installé pgloader, créez un script simple 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;
Exécutez-le dans votre terminal :
pgloader test.load
Une autre méthode consiste à utiliser mysqldump
mysqldump -u username -p -h host --skip-quote-names --hex-blob --skip-triggers \
--compact --no-create-info your_db your_table > prepg.dump
bytea
colonne de type
sed "s/0x\([0-9A-F]*\)/decode('\1','hex')/g" prepg.dump > pg.dump
\i '/path_to_file/pg.dump'