Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Chuyển đổi nhị phân mysql sang postgresql bytea

Tương đương với binary nhập trong MySQL là bytea trong PostgreSQL.

Bạn có thể sử dụng pgloader (cách đơn giản nhất)

Sau khi cài đặt pgloader, hãy tạo tập lệnh đơn giản 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;

Chạy nó trong thiết bị đầu cuối của bạn:

pgloader test.load

Một cách khác là sử dụng mysqldump

1. Bán phá giá với tùy chọn 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. Thực hiện sed để nó có thể được chèn vào bạn bytea loại cột

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

3. Tải vào bảng PostgreSQL của bạn

\i '/path_to_file/pg.dump'

Tham khảo



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tách các truy vấn mysql trong mảng, mỗi truy vấn cách nhau bởi;

  2. Hình ảnh dưới dạng liên kết trong cơ sở dữ liệu MySQL?

  3. Khóa ngoại trong MySQL?

  4. Phản chiếu cơ sở dữ liệu Oracle sang mysql

  5. Tôi có thể cập nhật / chọn từ một bảng trong một truy vấn không?