【PG】ora2pg 分别导出表,索引,存储过程等



#!/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 "数据迁移完成。"

posted @ 2024-03-14 22:06  DBAGPT  阅读(155)  评论(0编辑  收藏  举报