Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Konwertuj plik binarny mysql na postgresql bytea

Odpowiednik binary wpisz w MySQL to bytea w PostgreSQL.

Możesz użyć pgloader (najprostszy sposób)

Po zainstalowaniu pgloadera utwórz prosty skrypt 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;

Uruchom go w swoim terminalu:

pgloader test.load

Innym sposobem jest użycie mysqldump

1. Zrzuć to za pomocą opcji hex-blob

mysqldump -u username -p -h host --skip-quote-names --hex-blob --skip-triggers \
--compact --no-create-info your_db your_table > prepg.dump

2. Zrób sed, aby można było go wstawić bytea wpisz kolumnę

sed "s/0x\([0-9A-F]*\)/decode('\1','hex')/g" prepg.dump > pg.dump

3. Załaduj do swojej tabeli PostgreSQL

\i '/path_to_file/pg.dump'

Referencje



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySql:Pokaż kolumny, ale wyklucz wszystko oprócz nazw pól

  2. Kolejność MySQL według kategorii i podkategorii

  3. Jak wymusić unikatowość w wielu tabelach

  4. Łączenie tabeli z warunkiem podciągu

  5. Suma bieżąca w zakresie dat — uzupełnij brakujące daty