Oracle12C | 迁移数据到 PostgreSQL 数据库

1. 迁移环境

Linux 服务器,Oracle 12C 数据库 以及 PostgreSQL 数据库

2. 安装 Ora2Pg 工具

2.1 安装依赖包

yum install perl-DBI perl-DBD-Pg perl-ExtUtils-MakeMaker gcc
wget http://search.cpan.org/CPAN/authors/id/P/PY/PYTHIAN/DBD-Oracle-1.74.tar.gz
tar -zxvf DBD-Oracle-1.74.tar.gz
cd DBD-Oracle-1.74
source /home/oracle/.bash_profile
perl Makefile.PL -l
make
make install  

2.2 安装 Ora2Pg 包

下载地址: https://sourceforge.net/projects/ora2pg/files/?source=navbar

下载完毕后将包上传到 Linux 根目录,执行如下步骤命令:

tar -jxvf ora2pg-18.2.tar.bz2
cd ora2pg-18.2
perl Makefile.PL
make
make install

Ora2Pg 默认安装位置为: /usr/local/bin/ 。

2.3 修改 conf 配置

Ora2Pg 的 conf 文件 ( ora2pg.conf.dist ) 默认位置为:/etc/ora2pg/ 。

主要修改以下几个参数内容就行:

ORACLE_DSN     dbi:Oracle:host=192.168.23.116;service_name=ORCLPDB;port=1521
//这里也可以根据SID来配置
ORACLE_DSN     dbi:Oracle:host=192.168.23.116;SID=ORCL;port=1521
//用户名
ORACLE_USER     hkswing
//密码
ORACLE_PWD     hkswing
//模式,一般与用户名相同
SCHEMA         hkswing

2.4 测试数据库连接

Ora2Pg 安装配置好了之后,可以使用如下方式测试数据库是否可以正常连接:

ora2pg -t SHOW_VERSION -c ora2pg.conf.dist
//以下结果说明可以正常连接数据库
[root@localhost ora2pg]# ora2pg -t SHOW_VERSION -c ora2pg.conf.dist
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0

2.5 导出 Oracle 数据库

执行如下命令导出数据库,导出速度取决于数据量,刚开始可能比较慢,耐心等待进度条出现直至完成:

ora2pg -c ora2pg.conf.dist
//导出完成时显示如下
[root@localhost ora2pg]# ora2pg -c ora2pg.conf.dist 
[========================>] 305/305 tables (100.0%) end of scanning.                        
Retrieving table partitioning information...
[========================>] 305/305 tables (100.0%) end of table export.

导出结果默认位置为当前位置,如果是在 conf 路径下执行的导出命令,那么结果位于路径: cd /etc/ora2pg/ 下。

2.6 导入 PostgreSQL 数据库

因为导出的结果是 sql 文件,所以导入时可以去 PostgreSQL 数据库下使用 \i 命令执行导入,亦或者借助工具执行 sql 文件导入也行。

Ora2Pg 迁移后的数据并不 100% 没有问题,小细节处还需人为干预处理。

结束~~~

本文参考内容如下:
ora2pg的安装与使用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值