本篇目录
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的安装与使用