Oracle转Poatgresql,ora2pg工具安装使用

一、ora2pg:

ora2pg工具可以将oracle的结构转为postgresql格式,可以配置Oracle的模式导出、客户端编码、导出类型、ora2pg中使用的数据类型转换等,最终输出为sql文件,在postgresql中运行即可。

二、安装依赖

1、在windows10上安装perl,下载地址Strawberry Perl for Windows

2、下载最新ora2pg的安装包,地址ora2pg download | SourceForge.net

3、安装oracle instantclient,Instant Client for Microsoft Windows (x64) 64-bit

三、安装步骤

1、解压缩下载的ora2pg压缩包;

2、在cmd中切换到解压目录;

执行perl Makefile.PL

安装完后会有提示执行命令:dmake && dmake install

然后再执行命令:gmake && gmake install

 

 

 

3、安装Oracle 【网上有很多教程啦】

4、驱动DBD::Oracle,执行命令:

  • cpan
  • get DBD::Oracle
  • install DBD::Oracle

5、修改配置文件c:\ora2pg\ora2pg_conf.dist

# 设置Oracle主目录:Oracle的安装目录
ORACLE_HOME  c:\instantclient_11_2 
 
# 设置Oracle数据库连接(数据源、用户、密码)
ORACLE_DSN	dbi:Oracle:host=192.168.140.23;sid=orcl;port=1521
ORACLE_USER	test
ORACLE_PWD	testpwd
 
# 要使用的 Oracle 模式/所有者
#SCHEMA TEST
 
# EXPORT SECTION(导出类型和过滤器)
# 导出类型。值可以是以下关键字:
# TABLE 导出表、约束、索引...
#PACKAGE 导出包
# INSERT 从表中导出数据作为 INSERT 语句
# COPY 将表中的数据导出为 COPY 语句
# VIEW 导出视图
# GRANT 导出授权
# SEQUENCE 导出序列
# TRIGGER 导出触发器
# FUNCTION 导出函数
# PROCEDURE 导出程序
# TABLESPACE 导出表空间(仅限 PostgreSQL >= 8)
# TYPE 导出用户定义的 Oracle 类型
# PARTITION 导出范围或列表分区 (PostgreSQL >= v8.4)
# FDW 导出表作为外部数据包装表
# MVIEW 将物化视图导出为快照刷新视图
# QUERY 从文件转换 Oracle SQL 查询。
# KETTLE 生成 Kettle 使用的 XML ktr 模板文件。
# DBLINK 生成 oracle 外部数据包装服务器以用作 dblink。
# SYNONYM 将 Oracle 的同义词导出为其他模式对象的视图。
# DIRECTORY 将 Oracle 的目录导出为 external_file 扩展对象。
# LOAD 通过多个 PostgreSQl 连接调度查询列表。
# TEST 执行 Oracle 和 PostgreSQL 数据库之间的差异。
# TEST_COUNT 只在 Oracle 和 PostgreSQL 表之间执行行计数。
# TEST_VIEW 对视图返回的行数两边进行计数
# TEST_DATA 对两边的行进行数据验证检查。
TYPE	TABLE,VIEW,SEQUENCE,TRIGGER,FUNCTION,PROCEDURE
 
 
#设置从哪个对象导出
#ALLOW TABLE_TEST
 
 
# 导出文件存储位置
OUTPUT	C:\output.sql
 
# 必须写入所有转储文件的基本目录
# OUTPUT_DIR /var/tmp

  

6、执行导出语句: ora2pg -c c:\ora2pg\ora2pg_conf.dist

注意:如果type设置为多个时,output不能写具体的是哪个目录,因为导出多个type时,是以type_output.sql命名文件的


原文链接:https://blog.csdn.net/weixin_36027342/article/details/126269538

posted @ 2022-10-09 20:32  乌柒柒  阅读(418)  评论(0编辑  收藏  举报