【PG】ora2pg 分別匯出表,索引,儲存過程等

DBAGPT發表於2024-03-14


#!/bin/bash

# 檢查ora2pg命令是否可用
command -v ora2pg >/dev/null 2>&1 || { echo >&2 "ora2pg 工具未安裝或未在PATH中。請先安裝並配置好ora2pg工具。"; exit 1; }

# 配置檔案路徑
ora2pg_conf="/path/to/ora2pg.conf"

# 匯出表結構和資料
echo "匯出表結構和資料..."
ora2pg --config $ora2pg_conf --output /path/to/output/table.sql

# 匯出索引
echo "匯出索引..."
ora2pg --config $ora2pg_conf --index --output /path/to/output/index.sql

# 匯出觸發器
echo "匯出觸發器..."
ora2pg --config $ora2pg_conf --trigger --output /path/to/output/trigger.sql

# 匯出函式和包
echo "匯出函式和包..."
ora2pg --config $ora2pg_conf --package --output /path/to/output/package.sql

# 執行匯出的SQL指令碼到PostgreSQL
echo "執行匯出的SQL指令碼到PostgreSQL..."
psql -U postgres -d target_database -f /path/to/output/table.sql
psql -U postgres -d target_database -f /path/to/output/index.sql
psql -U postgres -d target_database -f /path/to/output/trigger.sql
psql -U postgres -d target_database -f /path/to/output/package.sql

echo "資料遷移完成。"

相關文章