Oracle迁移至openGauss的工具:ora2op的安装配置

目录

前言

1. ora2op的下载

1.1 下载地址

1.2 ora2op 介绍

2. ora2op的安装

2.1 安装perl的依赖包

2.2 安装连接Oracle数据库的模块

2.3 安装ora2op

2.4 安装连接openGauss数据库的模块


前言

本工具是使用perl,在安装时会遇到各种问题,解决方式也是一点一点摸索,各种包依赖安装不成功。大家在参考使用时需结合实际情况。 使用的操作系统是centos7.9。 其中

perl -MCPAN -e 'install DBD::Pg'

安装这个模块是各种报错

1. ora2op的下载

1.1 下载地址

在openGauss官方网站上没有直接的下载地址,但是可以找到下载的链接网站。 地址 (https://opengauss.org/zh/supporttools/)

进入后是gitee官方网站。 https://gitee.com/opengauss/openGauss-tools-ora2og

进入后直接点下载、这个网站下载需要账号登录。 下载后的包是这样的 openGauss-tools-ora2og-master.zip

大小为474kb 或者直接从这里下载也行 墨天轮文档:openGauss-tools-ora2og-master.zip 把下载的包上传到操作系统上面

1.2 ora2op 介绍

openGauss-tools-ora2og 介绍 ora2og是一个将Oracle数据库迁移至openGauss的工具,主要编程语言为perl,通过perl DBI模块连接Oracle数据库,自动扫描并提取其中的对象结构及数据,产生SQL脚本,通过手动或自动的方式应用到openGauss。此外,工具还提供丰富配置项,用户可以自定义迁移行为。

ora2og初始代码源自ora2pg,版本为release v21.1:https://github.com/darold/ora2pg/tree/v21.1。

优秀特性 支持导出数据库绝大多数对象类型,包括表、视图、序列、索引、外键、约束、函数、存储过程等。

提供PL/SQL到PL/PGSQL语法的自动转换,一定程度避免了人工修正。

可生成迁移报告,包括迁移难度评估、人天估算。

可选对导出数据进行压缩,节约磁盘开销。

配置选项丰富,可自定义迁移行为。

2. ora2op的安装

2.1 安装perl的依赖包

yum install perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker perl-Time-HiRes perl-devel perl-DBI perl-Compress-Zlib perl-open

2.2 安装连接Oracle数据库的模块

这个模块的使用需要先配置oracle客户端 下载oracle 19.10的客户端 官网下载地址 oracle-instantclient19.10-jdbc-19.10.0.0.0-1.x86_64.rpm oracle-instantclient19.10-sqlplus-19.10.0.0.0-1.x86_64.rpm oracle-instantclient19.10-devel-19.10.0.0.0-1.x86_64.rpm oracle-instantclient19.10-basic-19.10.0.0.0-1.x86_64.rpm 在root用户下使用rpm进行安装

rpm -ivh oracle-instantclient19.10-basic-19.10.0.0.0-1.x86_64.rpmrpm -ivh oracle-instantclient19.10-devel-19.10.0.0.0-1.x86_64.rpm rpm -ivh oracle-instantclient19.10-jdbc-19.10.0.0.0-1.x86_64.rpm rpm -ivh oracle-instantclient19.10-sqlplus-19.10.0.0.0-1.x86_64.rpm

在root家目录下配置环境变量

cd /rootvi .base_profileexport ORACLE_HOME=/usr/lib/oracle/19.10/client64export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATHexport PATH=$ORACLE_HOME/bin:$PATH

使变量生效

source .base_profile

获取安装包、然后进行编译安装

[root@master01 DBD-Oracle-1.80]# perl Makefile.PLMultiple copies of Driver.xst found in: /usr/local/lib64/perl5/auto/DBI/ /usr/lib64/perl5/vendor_perl/auto/DBI/ at Makefile.PL line 36.Using DBI 1.643 (for perl 5.016003 on x86_64-linux-thread-multi) installed in /usr/local/lib64/perl5/auto/DBI/Configuring DBD::Oracle for perl 5.016003 on linux (x86_64-linux-thread-multi)If you encounter any problem, a collection of troubleshootingguides are available under lib/DBD/Oracle/Troubleshooting.'DBD::Oracle::Troubleshooting' is the general troubleshootingguide, while platform-specific troubleshooting hintslive in their labelled sub-document (e.g., Win32hints are gathered in 'lib/DBD/Oracle/Troubleshooting/Win32.pod').Trying to find an ORACLE_HOMEYour LD_LIBRARY_PATH env var is set to '/opt/huawei/install/om/lib:/opt/huawei/install/om/script/gspylib/clib:'Found /usr/lib/oracle/19.10/client64WARNING: Setting ORACLE_HOME env var to /usr/lib/oracle/19.10/client64 for you.WARNING: If these tests fail you may have to set ORACLE_HOME yourself!Installing on a linux, Ver#3.10Using Oracle in /usr/lib/oracle/19.10/client64DEFINE _SQLPLUS_RELEASE = "1910000000" (CHAR)Oracle Version 19.10.0.0 (19.10)Found direct-link candidates: libclntsh.soOracle sysliblist:Found header files in /usr/include/oracle/19.10/client64.Your LD_LIBRARY_PATH env var is set to '/opt/huawei/install/om/lib:/opt/huawei/install/om/script/gspylib/clib:'WARNING: Your LD_LIBRARY_PATH env var doesn't include '/usr/lib/oracle/19.10/client64/lib' but probably needs to.client_version=19.10DEFINE= -Wall -Wno-comment -DUTF8_SUPPORT -DORA_OCI_VERSION=\"19.10.0.0\" -DORA_OCI_102 -DORA_OCI_112Checking for functioning wait.phSystem: perl5.016003 linux x86-02.bsys.centos.org 3.10.0-957.1.3.el7.x86_64 #1 smp thu nov 29 14:49:43 utc 2018 x86_64 x86_64 x86_64 gnulinuxCompiler:   gcc -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64Linker:     /usr/bin/ldSysliblist:Linking with -lclntsh.Checking if your kit is complete...Looks goodLD_RUN_PATH=/usr/lib/oracle/19.10/client64/libUsing DBD::Oracle 1.80.Using DBD::Oracle 1.80.Multiple copies of Driver.xst found in: /usr/local/lib64/perl5/auto/DBI/ /usr/lib64/perl5/vendor_perl/auto/DBI/ at Makefile.PL line 1807.Using DBI 1.643 (for perl 5.016003 on x86_64-linux-thread-multi) installed in /usr/local/lib64/perl5/auto/DBI/Generating a Unix-style MakefileWriting Makefile for DBD::OracleWriting MYMETA.yml and MYMETA.json

[root@master01 DBD-Oracle-1.80]# make && make installcp lib/DBD/Oracle/Troubleshooting/Cygwin.pod blib/lib/DBD/Oracle/Troubleshooting/Cygwin.podcp lib/DBD/Oracle.pm blib/lib/DBD/Oracle.pmcp Oracle.h blib/arch/auto/DBD/Oracle/Oracle.hcp lib/DBD/Oracle/Troubleshooting/Vms.pod blib/lib/DBD/Oracle/Troubleshooting/Vms.podcp lib/DBD/Oracle/Troubleshooting/Hpux.pod blib/lib/DBD/Oracle/Troubleshooting/Hpux.podcp lib/DBD/Oracle/Troubleshooting/Linux.pod blib/lib/DBD/Oracle/Troubleshooting/Linux.podcp lib/DBD/Oracle/GetInfo.pm blib/lib/DBD/Oracle/GetInfo.pmcp lib/DBD/Oracle/Troubleshooting.pod blib/lib/DBD/Oracle/Troubleshooting.podcp dbdimp.h blib/arch/auto/DBD/Oracle/dbdimp.hcp ocitrace.h blib/arch/auto/DBD/Oracle/ocitrace.hcp lib/DBD/Oracle/Troubleshooting/Sun.pod blib/lib/DBD/Oracle/Troubleshooting/Sun.podcp lib/DBD/Oracle/Troubleshooting/Macos.pod blib/lib/DBD/Oracle/Troubleshooting/Macos.podcp lib/DBD/Oracle/Troubleshooting/Aix.pod blib/lib/DBD/Oracle/Troubleshooting/Aix.podcp lib/DBD/Oracle/Object.pm blib/lib/DBD/Oracle/Object.pmcp lib/DBD/Oracle/Troubleshooting/Win64.pod blib/lib/DBD/Oracle/Troubleshooting/Win64.podcp lib/DBD/Oracle/Troubleshooting/Win32.pod blib/lib/DBD/Oracle/Troubleshooting/Win32.podcp mk.pm blib/arch/auto/DBD/Oracle/mk.pmRunning Mkbootstrap for Oracle ()chmod 644 "Oracle.bs""/usr/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- Oracle.bs blib/arch/auto/DBD/Oracle/Oracle.bs 644"/usr/bin/perl" -p -e "s/~DRIVER~/Oracle/g" /usr/local/lib64/perl5/auto/DBI/Driver.xst > Oracle.xsi"/usr/bin/perl" "/usr/share/perl5/vendor_perl/ExtUtils/xsubpp"  -typemap '/usr/share/perl5/ExtUtils/typemap' -typemap '/root/DBD-Oracle-1.80/typemap'  Oracle.xs > Oracle.xscmv Oracle.xsc Oracle.cgcc -c  -I/usr/include/oracle/19.10/client64 -I/usr/local/lib64/perl5/auto/DBI -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic   -DVERSION=\"1.80\" -DXS_VERSION=\"1.80\" -fPIC "-I/usr/lib64/perl5/CORE"  -Wall -Wno-comment -DUTF8_SUPPORT -DORA_OCI_VERSION=\"19.10.0.0\" -DORA_OCI_102 -DORA_OCI_112 Oracle.cgcc -c  -I/usr/include/oracle/19.10/client64 -I/usr/local/lib64/perl5/auto/DBI -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic   -DVERSION=\"1.80\" -DXS_VERSION=\"1.80\" -fPIC "-I/usr/lib64/perl5/CORE"  -Wall -Wno-comment -DUTF8_SUPPORT -DORA_OCI_VERSION=\"19.10.0.0\" -DORA_OCI_102 -DORA_OCI_112 dbdimp.cgcc -c  -I/usr/include/oracle/19.10/client64 -I/usr/local/lib64/perl5/auto/DBI -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic   -DVERSION=\"1.80\" -DXS_VERSION=\"1.80\" -fPIC "-I/usr/lib64/perl5/CORE"  -Wall -Wno-comment -DUTF8_SUPPORT -DORA_OCI_VERSION=\"19.10.0.0\" -DORA_OCI_102 -DORA_OCI_112 oci8.crm -f blib/arch/auto/DBD/Oracle/Oracle.soLD_RUN_PATH="/usr/lib/oracle/19.10/client64/lib" gcc  -shared -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -Wl,-z,relro   Oracle.o dbdimp.o oci8.o  -o blib/arch/auto/DBD/Oracle/Oracle.so  \   -L/usr/lib/oracle/19.10/client64/lib -lclntsh   \chmod 755 blib/arch/auto/DBD/Oracle/Oracle.soManifying 13 pod documents"/usr/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- Oracle.bs blib/arch/auto/DBD/Oracle/Oracle.bs 644Manifying 13 pod documentsFiles found in blib/arch: installing files in blib/lib into architecture dependent library treeInstalling /root/perl5/lib/perl5/x86_64-linux-thread-multi/auto/DBD/Oracle/Oracle.hInstalling /root/perl5/lib/perl5/x86_64-linux-thread-multi/auto/DBD/Oracle/dbdimp.hInstalling /root/perl5/lib/perl5/x86_64-linux-thread-multi/auto/DBD/Oracle/ocitrace.hInstalling /root/perl5/lib/perl5/x86_64-linux-thread-multi/auto/DBD/Oracle/mk.pmInstalling /root/perl5/lib/perl5/x86_64-linux-thread-multi/auto/DBD/Oracle/Oracle.soInstalling /root/perl5/lib/perl5/x86_64-linux-thread-multi/DBD/Oracle.pmInstalling /root/perl5/lib/perl5/x86_64-linux-thread-multi/DBD/Oracle/GetInfo.pmInstalling /root/perl5/lib/perl5/x86_64-linux-thread-multi/DBD/Oracle/Troubleshooting.podInstalling /root/perl5/lib/perl5/x86_64-linux-thread-multi/DBD/Oracle/Object.pmInstalling /root/perl5/lib/perl5/x86_64-linux-thread-multi/DBD/Oracle/Troubleshooting/Cygwin.podInstalling /root/perl5/lib/perl5/x86_64-linux-thread-multi/DBD/Oracle/Troubleshooting/Vms.podInstalling /root/perl5/lib/perl5/x86_64-linux-thread-multi/DBD/Oracle/Troubleshooting/Hpux.podInstalling /root/perl5/lib/perl5/x86_64-linux-thread-multi/DBD/Oracle/Troubleshooting/Linux.podInstalling /root/perl5/lib/perl5/x86_64-linux-thread-multi/DBD/Oracle/Troubleshooting/Sun.podInstalling /root/perl5/lib/perl5/x86_64-linux-thread-multi/DBD/Oracle/Troubleshooting/Macos.podInstalling /root/perl5/lib/perl5/x86_64-linux-thread-multi/DBD/Oracle/Troubleshooting/Aix.podInstalling /root/perl5/lib/perl5/x86_64-linux-thread-multi/DBD/Oracle/Troubleshooting/Win64.podInstalling /root/perl5/lib/perl5/x86_64-linux-thread-multi/DBD/Oracle/Troubleshooting/Win32.podInstalling /root/perl5/man/man3/DBD::Oracle.3pmInstalling /root/perl5/man/man3/DBD::Oracle::GetInfo.3pmInstalling /root/perl5/man/man3/DBD::Oracle::Object.3pmInstalling /root/perl5/man/man3/DBD::Oracle::Troubleshooting.3pmInstalling /root/perl5/man/man3/DBD::Oracle::Troubleshooting::Aix.3pmInstalling /root/perl5/man/man3/DBD::Oracle::Troubleshooting::Cygwin.3pmInstalling /root/perl5/man/man3/DBD::Oracle::Troubleshooting::Hpux.3pmInstalling /root/perl5/man/man3/DBD::Oracle::Troubleshooting::Linux.3pmInstalling /root/perl5/man/man3/DBD::Oracle::Troubleshooting::Macos.3pmInstalling /root/perl5/man/man3/DBD::Oracle::Troubleshooting::Sun.3pmInstalling /root/perl5/man/man3/DBD::Oracle::Troubleshooting::Vms.3pmInstalling /root/perl5/man/man3/DBD::Oracle::Troubleshooting::Win32.3pmInstalling /root/perl5/man/man3/DBD::Oracle::Troubleshooting::Win64.3pmAppending installation info to /root/perl5/lib/perl5/x86_64-linux-thread-multi/perllocal.pod[root@master01 DBD-Oracle-1.80]#

2.3 安装ora2op

解压

[root@master01 ora2op]# unzip openGauss-tools-ora2og-master.zipArchive:  openGauss-tools-ora2og-master.zip8a98a77d57b32b836c86f82095615732d3636cc7   creating: openGauss-tools-ora2og-master/ extracting: openGauss-tools-ora2og-master/INSTALL  inflating: openGauss-tools-ora2og-master/LICENSE  inflating: openGauss-tools-ora2og-master/MANIFEST  inflating: openGauss-tools-ora2og-master/Makefile.PL  inflating: openGauss-tools-ora2og-master/README  inflating: openGauss-tools-ora2og-master/README.en.md  inflating: openGauss-tools-ora2og-master/README.md  inflating: openGauss-tools-ora2og-master/changelog   creating: openGauss-tools-ora2og-master/doc/  inflating: openGauss-tools-ora2og-master/doc/Ora2Pg.pod  inflating: openGauss-tools-ora2og-master/doc/ora2pg.3   creating: openGauss-tools-ora2og-master/lib/  inflating: openGauss-tools-ora2og-master/lib/Ora2Pg.pm   creating: openGauss-tools-ora2og-master/lib/Ora2Pg/  inflating: openGauss-tools-ora2og-master/lib/Ora2Pg/GEOM.pm  inflating: openGauss-tools-ora2og-master/lib/Ora2Pg/MySQL.pm  inflating: openGauss-tools-ora2og-master/lib/Ora2Pg/PLSQL.pm   creating: openGauss-tools-ora2og-master/packaging/  inflating: openGauss-tools-ora2og-master/packaging/README   creating: openGauss-tools-ora2og-master/packaging/RPM/  inflating: openGauss-tools-ora2og-master/packaging/RPM/ora2pg.spec   creating: openGauss-tools-ora2og-master/packaging/debian/  inflating: openGauss-tools-ora2og-master/packaging/debian/create-deb-tree.sh   creating: openGauss-tools-ora2og-master/packaging/debian/ora2pg/   creating: openGauss-tools-ora2og-master/packaging/debian/ora2pg/DEBIAN/  inflating: openGauss-tools-ora2og-master/packaging/debian/ora2pg/DEBIAN/control  inflating: openGauss-tools-ora2og-master/packaging/debian/ora2pg/DEBIAN/copyright   creating: openGauss-tools-ora2og-master/packaging/slackbuild/  inflating: openGauss-tools-ora2og-master/packaging/slackbuild/Ora2Pg.SlackBuild  inflating: openGauss-tools-ora2og-master/packaging/slackbuild/Ora2Pg.info  inflating: openGauss-tools-ora2og-master/packaging/slackbuild/README extracting: openGauss-tools-ora2og-master/packaging/slackbuild/doinst.sh  inflating: openGauss-tools-ora2og-master/packaging/slackbuild/slack-desc   creating: openGauss-tools-ora2og-master/scripts/  inflating: openGauss-tools-ora2og-master/scripts/ora2pg  inflating: openGauss-tools-ora2og-master/scripts/ora2pg_scanner[root@master01 ora2op]#

进入解压目录

cd openGauss-tools-ora2og-master/

开始编译安装

[root@master01 openGauss-tools-ora2og-master]# perl Makefile.PLChecking if your kit is complete...Looks goodInvalid LICENSE value 'GPLv3' ignoredGenerating a Unix-style MakefileWriting Makefile for Ora2PgInvalid LICENSE value 'GPLv3' ignoredWriting MYMETA.yml and MYMETA.jsonDone...------------------------------------------------------------------------------Please read documentation at http://ora2pg.darold.net/ before asking for help------------------------------------------------------------------------------Now type: make && make install

编译并安装

[root@master01 openGauss-tools-ora2og-master]# make && make installcp lib/Ora2Pg/GEOM.pm blib/lib/Ora2Pg/GEOM.pmcp lib/Ora2Pg.pm blib/lib/Ora2Pg.pmcp lib/Ora2Pg/PLSQL.pm blib/lib/Ora2Pg/PLSQL.pmcp lib/Ora2Pg/MySQL.pm blib/lib/Ora2Pg/MySQL.pmcp scripts/ora2pg blib/script/ora2pg"/usr/bin/perl" -MExtUtils::MY -e 'MY->fixin(shift)' -- blib/script/ora2pgcp scripts/ora2pg_scanner blib/script/ora2pg_scanner"/usr/bin/perl" -MExtUtils::MY -e 'MY->fixin(shift)' -- blib/script/ora2pg_scannerManifying 1 pod documentManifying 1 pod documentInstalling /root/perl5/lib/perl5/Ora2Pg.pmInstalling /root/perl5/lib/perl5/Ora2Pg/GEOM.pmInstalling /root/perl5/lib/perl5/Ora2Pg/PLSQL.pmInstalling /root/perl5/lib/perl5/Ora2Pg/MySQL.pmInstalling /root/perl5/man/man3/ora2pg.3Installing /root/perl5/bin/ora2pgInstalling /root/perl5/bin/ora2pg_scannerInstalling default configuration file (ora2pg.conf.dist) to /etc/ora2pgAppending installation info to /root/perl5/lib/perl5/x86_64-linux-thread-multi/perllocal.pod[root@master01 openGauss-tools-ora2og-master]#

2.4 安装连接openGauss数据库的模块

wget -c https://cpan.metacpan.org/authors/id/T/TU/TURNSTEP/DBD-Pg-3.14.2.tar.gzgunzip DBD-Pg-3.14.2.tar.gztar -xvf DBD-Pg-3.14.2.tarcd DBD-Pg-3.14.2/vi .bash_profileexport ORACLE_HOME=/usr/lib/oracle/19.10/client64export GAUSSHOME=/opt/huawei/install/appexport LD_LIBRARY_PATH=$ORACLE_HOME/lib:$GAUSSHOME/lib:$LD_LIBRARY_PATHexport PATH=$ORACLE_HOME/bin:$GAUSSHOME/bin:$PATHsource .bash_profileperl Makefile.PLyum install /usr/include/libpq-fe.hmake && make install

[root@master01 DBD-Pg-3.14.2]# perl Makefile.PLConfiguring DBD::Pg 3.14.2PostgreSQL version: 90204 (default port: 5432)POSTGRES_HOME: (not set)POSTGRES_INCLUDE: /opt/huawei/install/app/includePOSTGRES_LIB: /opt/huawei/install/app/libOS: linuxMultiple copies of Driver.xst found in: /usr/local/lib64/perl5/auto/DBI/ /usr/li                                                                                                                              b64/perl5/vendor_perl/auto/DBI/ at Makefile.PL line 182.Checking if your kit is complete...Looks goodMultiple copies of Driver.xst found in: /usr/local/lib64/perl5/auto/DBI/ /usr/li                                                                                                                              b64/perl5/vendor_perl/auto/DBI/ at Makefile.PL line 284.Using DBI 1.643 (for perl 5.016003 on x86_64-linux-thread-multi) installed in /u                                                                                                                              sr/local/lib64/perl5/auto/DBI/Generating a Unix-style MakefileWriting Makefile for DBD::PgWriting MYMETA.yml and MYMETA.json

[root@master01 DBD-Pg-3.14.2]# makeSkip blib/lib/Bundle/DBD/Pg.pm (unchanged)Skip blib/lib/DBD/Pg.pm (unchanged)Running Mkbootstrap for Pg ()chmod 644 "Pg.bs""/usr/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- Pg.bs blib/arch/auto/DBD/Pg/Pg.bs 644gcc -c  -I/opt/huawei/install/app/include -I/usr/local/lib64/perl5/auto/DBI -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DPGLIBVERSION=90204 -DPGDEFPORT=5432 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic  -DPERL_EXTMALLOC_DEF -Dmalloc=Perl_malloc -Dfree=Perl_mfree -Drealloc=Perl_realloc -Dcalloc=Perl_calloc -DVERSION=\"3.14.2\" -DXS_VERSION=\"3.14.2\" -fPIC "-I/usr/lib64/perl5/CORE"   Pg.cgcc -c  -I/opt/huawei/install/app/include -I/usr/local/lib64/perl5/auto/DBI -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DPGLIBVERSION=90204 -DPGDEFPORT=5432 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic  -DPERL_EXTMALLOC_DEF -Dmalloc=Perl_malloc -Dfree=Perl_mfree -Drealloc=Perl_realloc -Dcalloc=Perl_calloc -DVERSION=\"3.14.2\" -DXS_VERSION=\"3.14.2\" -fPIC "-I/usr/lib64/perl5/CORE"   dbdimp.cgcc -c  -I/opt/huawei/install/app/include -I/usr/local/lib64/perl5/auto/DBI -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DPGLIBVERSION=90204 -DPGDEFPORT=5432 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic  -DPERL_EXTMALLOC_DEF -Dmalloc=Perl_malloc -Dfree=Perl_mfree -Drealloc=Perl_realloc -Dcalloc=Perl_calloc -DVERSION=\"3.14.2\" -DXS_VERSION=\"3.14.2\" -fPIC "-I/usr/lib64/perl5/CORE"   quote.cIn file included from Pg.h:58:0,                 from quote.c:10:/usr/local/lib64/perl5/auto/DBI/DBIXS.h:493:25: warning: ‘dbi_get_state’ defined but not used [-Wunused-function]     static dbistate_t** dbi_get_state(pTHX) {                               \                         ^/usr/local/lib64/perl5/auto/DBI/DBIXS.h:506:27: note: in expansion of macro ‘_DBISTATE_DECLARE_COMMON’ # define DBISTATE_DECLARE _DBISTATE_DECLARE_COMMON                           ^Pg.h:64:1: note: in expansion of macro ‘DBISTATE_DECLARE’ DBISTATE_DECLARE; ^gcc -c  -I/opt/huawei/install/app/include -I/usr/local/lib64/perl5/auto/DBI -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DPGLIBVERSION=90204 -DPGDEFPORT=5432 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic  -DPERL_EXTMALLOC_DEF -Dmalloc=Perl_malloc -Dfree=Perl_mfree -Drealloc=Perl_realloc -Dcalloc=Perl_calloc -DVERSION=\"3.14.2\" -DXS_VERSION=\"3.14.2\" -fPIC "-I/usr/lib64/perl5/CORE"   types.cIn file included from Pg.h:58:0,                 from types.c:15:/usr/local/lib64/perl5/auto/DBI/DBIXS.h:493:25: warning: ‘dbi_get_state’ defined but not used [-Wunused-function]     static dbistate_t** dbi_get_state(pTHX) {                               \                         ^/usr/local/lib64/perl5/auto/DBI/DBIXS.h:506:27: note: in expansion of macro ‘_DBISTATE_DECLARE_COMMON’ # define DBISTATE_DECLARE _DBISTATE_DECLARE_COMMON                           ^Pg.h:64:1: note: in expansion of macro ‘DBISTATE_DECLARE’ DBISTATE_DECLARE; ^rm -f blib/arch/auto/DBD/Pg/Pg.soLD_RUN_PATH="/opt/huawei/install/app/lib" gcc  -shared -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -Wl,-z,relro   Pg.o dbdimp.o quote.o types.o  -o blib/arch/auto/DBD/Pg/Pg.so  \   -L/opt/huawei/install/app/lib -lpq -lm   \chmod 755 blib/arch/auto/DBD/Pg/Pg.soManifying 2 pod documents[root@master01 DBD-Pg-3.14.2]# make install"/usr/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- Pg.bs blib/arch/auto/DBD/Pg/Pg.bs 644Manifying 2 pod documentsFiles found in blib/arch: installing files in blib/lib into architecture dependent library treeInstalling /root/perl5/lib/perl5/x86_64-linux-thread-multi/auto/DBD/Pg/Pg.soInstalling /root/perl5/lib/perl5/x86_64-linux-thread-multi/DBD/Pg.pmInstalling /root/perl5/lib/perl5/x86_64-linux-thread-multi/Bundle/DBD/Pg.pmInstalling /root/perl5/man/man3/DBD::Pg.3pmInstalling /root/perl5/man/man3/Bundle::DBD::Pg.3pmAppending installation info to /root/perl5/lib/perl5/x86_64-linux-thread-multi/perllocal.pod[root@master01 DBD-Pg-3.14.2]#

 至此,ora2op安装成功,接下来我们便可以创建迁移项目,进行数据库迁移。

本文作者:博(二两烧麦)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/411691.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何在知行之桥上通过业务单号查找原始报文?

在知行之桥中接收或发送的数据通常是EDI原始报文,知行之桥会对EDI原始报文进行格式转换,以方便用户后端系统的处理。因此,一般情况下,用户看到的都是转换后的数据结构,例如Json、XML或Excel等,无需直接查看…

2024年第十五届蓝桥杯图形化省赛真题分享包含答案

Scratch初级:8月24日9:30-11:00 Scratch中级:8月24日14:00-15:30 Python:8月25日9:30-11:00 C++:8月25日14:00-15:30 这次考了哪些内容呢,我们来大概看看(编程题没有答案,编程题有,大家可以评论群留言单选题的答案): <

AT LINE-SELECTION

Syntax 语法 AT LINE-SELECTION. Effect 作用 This statement defines an event block whose event is triggered by the ABAP runtime environment during the display of a screen list - provided the scren cursor is on a list line and you select a function using t…

【数据结构】总结二叉树的概念以及存储结构

目录 1. 树的概念及结构 1.1 树的名词定义 1.2 树的表示 2. 二叉树的概念及结构 2.1 二叉树的概念 2.2 特殊的二叉树 2.2.1 满二叉树 2.2.2 完全二叉树 2.3 二叉树的存储结构 2.3.1 顺序存储 2.3.2 链式存储 3. 选择题 1. 树的概念及结构 1.1 树的名词定义 1. 节…

太阳方向角/高度角/赤纬角/太阳时角/真平太阳时差/理论计算方法(matlab)

1. 理论学习 方向角&#xff0c;高度角计算公式 如图&#xff0c;直观地描述了方位角(圆盘上红色夹角)与高度角(黄色线与圆盘的夹角) 赤纬角计算公式 地球赤道平面与太阳和地球中心的连线之间的夹角 如图所示&#xff0c;23度那个. 时角计算公式 太阳时角是指日面中心的时角…

SAP BW/BPC:实现自动执行BPC跑包程序

作者 idan lian 如需转载备注出处 如果对你有帮助&#xff0c;请点赞收藏~~~ 用途&#xff1a;创建程序&#xff0c;跑BPC包&#xff0c;把数据从BW应用层跑到BPC,程序可放到处理链或自动作业中&#xff0c;实现定时跑包。 1.步骤 首先需要BPC顾问创建一个他们手动执行的包…

在 Facebook 上投放广告需要多少钱?

Facebook 拥有 23.2 亿的月活跃用户&#xff0c;用户体量非常庞大&#xff0c;你的目标群体出现在社交媒体平台上的可能性非常高&#xff0c;所以企业会选择在Facebook 上投放广告。很多朋友想入局&#xff0c;但总是在思考Facebook 推广到底要花多少钱才能有效&#xff1f;如果…

NoSql数据库 Redis集群详解

目录 一、NoSql数据库简介 1.1 数据库主要分为两大类&#xff1a;关系型数据库与 NoSQL 数据库 1.2 为什么还要用 NoSQL 数据库呢&#xff1f; 1.3 RDBMS和NOSQL的特点及优缺点&#xff1a; 二 Remote Dictionary Server 简介&#xff08;redis&#xff09; 2.1 什么是redis …

【数据结构】队列(Queue)

目录 队列概念 ​方法 队列模拟实现 链表实现队列 入队列 出队列 获取队头元素 数组实现队列 入队列 出队列 返回头队列 返回尾队列 完整代码 双链表实现队列 数组实现队列&#xff08;设计循环队列&#xff09; 队列概念 队列&#xff1a;只允许在一段进行插入…

悬浮翻译软件有哪些?试试这些利器

在观看外国电影或电视剧的奇幻旅程中&#xff0c;面对字幕如流星般划过屏幕&#xff0c;是否渴望能即时捕捉每一个细微的情感涟漪与幽默火花&#xff0c;让体验更加完整无憾&#xff1f; 此刻&#xff0c;无需再为语言障碍而烦恼&#xff01;悬浮翻译器电脑版作为你贴心的跨文…

TPM管理培训究竟需要多少天?完整攻略在此

在探讨TPM管理培训究竟需要多少天这一核心问题时&#xff0c;我们首先需要明确TPM管理的核心理念、目标及其在企业运营中的重要性。TPM不仅仅是一套设备维护的方法论&#xff0c;更是一种以提升设备综合效率、改善企业体质为目标的管理哲学。它强调全员参与、全系统管理和全效率…

k8s-使用Network Policies实现网络隔离

一、需求 Kubernetes 的命名空间主要用于组织和隔离资源&#xff0c;但默认情况下&#xff0c;不同命名空间中的 Pod 之间是可以相互通信的。为了实现更严格的网络隔离&#xff0c;同一套k8s需要根据不同的命名空间进行网络环境隔离&#xff0c;例如开发&#xff08;dev01&…

SRE 必备知识 - Kafka 探秘之零拷贝技术

如果你了解过 Kafka&#xff0c;那么它用到的一个性能优化技术可能会引起你的注意 -- 操作系统的零拷贝&#xff08;zero-copy&#xff09;优化。 零拷贝操作可以避免对数据的非必要拷贝&#xff0c;当然&#xff0c;并非是说完全没有拷贝。 在 Kafka 的场景下&#xff0c;操作…

发布npm包到GitLab教程

之前在研究如何搭建UI组件库&#xff08;内部使用&#xff09;&#xff0c;其中重要的一步就是发布npm包到GitLab。中间踩了很多坑&#xff0c;在这里记录一下整个流程方便大家快速上手。不足之处欢迎指出&#x1f64f; 1. 获取Token 在gitlab中打开access tokens申请页面&am…

Linux--实现U盘,SD卡的自动挂载

1. 编辑/etc/init.d/rsC或S10mdev文件 在/etc/init.d/rsC或S10mdev中加入以下语句: echo /sbin/mdev > /proc/sys/kernel/hotplug 当有热插拔事件产生时,内核会调用/proc/sys/kernel/hotplug文件里指定的应用程序来处理热插拔事件。把/sbin/mdev写到/proc/sys/kernel/h…

【C++类和对象】类和对象的介绍、this指针以及体会面向对象编程

文章目录 &#x1f680;类✈️类的介绍✈️类的访问限定符✈️类的封装 &#x1f680;面向对象编程&#x1f680;类与对象的联系&#x1f680;this指针✈️引出this指针✈️this指针的特性 &#x1f680;类 ✈️类的介绍 在C语言中&#xff0c;结构体中仅能声明变量并不能定义…

nginx反向代理,负载均衡,动静分离

反向代理&#xff0c;负载均衡 nginx通常被用作后端服务器的反向代理&#xff0c;这样就可以很方便的实现动静分离以及负载均衡&#xff0c;从而大大提高服务器的处理能力。 nginx实现动静分离&#xff0c;其实就是在反向代理的时候&#xff0c;如果是静态资源&#xff0c;就…

Clickhouse集群化(三)集群化部署

1. 准备 clickhouse支持副本和分片的能力&#xff0c;但是自身无法实现需要借助zookeeper或者clickhouse-keeper来实现不同节点之间数据同步&#xff0c;同时clickhouse的数据是最终一致性 。 2. Zookeeper 副本的写入流程 没有主从概念 平等地位 互为副本 2.1. 部署zookeep…

储能电池热失控监测系统的关键应用场景与安全防护

​ ​储能电池热失控监测系统主要应用于以下几个关键领域&#xff0c;以确保电池系统的安全、稳定运行&#xff0c;并预防因热失控引发的安全事故&#xff1a; ​ ​1.大型可再生能源发电储能 ​ ​这类应用常见于太阳能光伏电站、风力发电场等场景&#xff0c;其中储…

软件测试面试题!收藏起来,每天看一看,月薪20K!

初级测试总结题&#xff01;必背&#xff01;必背&#xff01;必背&#xff01; 1&#xff09;软件的概念&#xff1f; 软件是计算机系统中与硬件相互依存的一部分&#xff0c;包括程序、数据以及与其相关文档的完整集合。 2&#xff09;软件测试的概念&#xff1f; 使用人…