Hướng dẫn Migrate từ các cơ sở dữ liệu SQL khác sang Postgresql sử dụng pgloader
Ta có thể sử dụng công cụ pgloader để migrate từ các cơ sở dữ liệu SQL khác sang Postgresql và ngược lại
Cài đặt pgloader
Ta cài đặt pgloader bằng các câu lệnh sau:
Đối với Ubuntu/ Debian:
sudo apt update
sudo apt install pgloader
Đối với Centos:
sudo apt update
sudo apt install pgloader
Đối với Windows:
# Trước tiên ta cần cài đặt wsl, mở powershell/cmd lên và nhập lệnh:
wsl --install
# Đợi quá trình cài đặt hoàn tất, trong đó ta cần phải khởi động lại thiết bị một lần.
# Sau khi cài đặt xong, ta mở wsl bằng lệnh
wsl
# Giờ ta sẽ cài đặt wsl tương tự ubuntu
sudo apt update
sudo apt install pgloader
Migrate cơ sở dữ liệu
Ta có thể migrate cơ sở dữ liệu đơn giản bằng một câu lệnh có cú pháp như sau:
pgloader [dbtype]://username:password@IP:port/[db_nguồn] postgresql://username:password@IP:port/[db_đích]
Nếu ta cần migrate cụ thể một bảng trong cơ sở dữ liệu hoặc cần thay đổi một chút về các bảng cần migrate, ta làm như sau:
Tạo một file cấu hình migrate như sau:
sudo vim migration.load
Sau đó ta cấu hình như sau rồi lưu lại:
LOAD DATABASE
FROM [dbtype]:///username:password@IP:port//database
INTO postgresql://username:password@IP:5432/targetdb
WITH include no tables not in source;
-- Chỉ định bảng cần migrate
TABLE table1;
TABLE table2;
-- Các chỉnh sửa khác, ví dụ như đổi tên cột của bảng
ALTER COLUMN old_field_name RENAME TO new_field_name;
Tiếp theo, ta chạy file cấu hình trên để tiến hành migrate:
Kết quả thành công sẽ hiện lên như sau
Vậy là giờ ta đã có thể migrate từ các cơ sở dữ liệu SQL khác sang Postgresql và ngược lại.