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

embedded/2024/9/19 23:05:05/ 标签: oracle, 数据库, gaussdb, 架构, SQL, openGauss

目录

前言

1. ora2op的下载

1.1 下载地址

1.2 ora2op 介绍

2. ora2op的安装

2.1 安装perl的依赖包

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

2.3 安装ora2op

openGauss%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9A%84%E6%A8%A1%E5%9D%97-toc" style="margin-left:40px;">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]#

openGauss%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9A%84%E6%A8%A1%E5%9D%97">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.ppmy.cn/embedded/103307.html

相关文章

WPF- vs中的WPF应用项目模板 如何自己实现

读书笔记 1. 单个 c#文件的 空白window应用程序 (只展示了一个button按钮) 2.C#文件 和xml文件 的空白window程序 .xml文件作为程序的资源 (只一个button按钮) 3. xmal和c#共同编译 形如使用VS 创建WPF应用项目模板 1.新建一个wpf空白项目 ,添加一个主c#文件 和xaml文件(属…

Qt Creator 配置pcl1.14.1

1.安装pcl1.14.1 地址:Releases PointCloudLibrary/pcl (github.com) 下载前两个 下载完成后双击exe文件,修改一下安装路径,然后一路下一步。 OpenNI2 默认安装到C:\Program Files 下了,想修改OpenNI2 的安装路径,可…

RISC-V全志D1sCVBS套件

此开发板的任何问题都可以在我们的论坛交流讨论 https://forums.100ask.net/c/10-category/75-category/75 硬件简述 D1s主板 主板如下: D1s板载功能 板载功能有 XR829 WIFI蓝牙模组芯片,Bluetooth支持标准蓝牙与 低功耗蓝牙,Wifi 支持…

python数据分析——网络爬虫和API

HTML 什么是超文本标记语言? 它包含由标签标记的多层内容,包括开始标签和带有‘/’的结束标签 “head”:用于浏览器特定信息 “style”:层叠样式表(CSS)用于设置HTML页面的样式 “body”:用于…

栈与队列--python

一、栈 1、概述 一种先入后出的线性数据结构,类似于叠盘子,先放下的盘子得最后才能拿到。在最上面的盘子我们称为栈顶,在最底下的盘子我们称为栈底,将盘子添加到栈顶的操作叫做入栈,将盘子从栈顶抽走的操作叫做出栈。…

innovus:Create Core Rows与Cut Core Rows

我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧? 拾陆楼知识星球入口 使用cut core row与create core row可以创建一个独立的区域,如下图。方法很简单

C++ | Leetcode C++题解之第383题赎金信

题目&#xff1a; 题解&#xff1a; class Solution { public:bool canConstruct(string ransomNote, string magazine) {if (ransomNote.size() > magazine.size()) {return false;}vector<int> cnt(26);for (auto & c : magazine) {cnt[c - a];}for (auto &am…

【爬虫采集工具】用python开发的快手评论区采集软件

我用python开发了一个爬虫采集软件&#xff0c;可自动抓取快手评论数据&#xff0c;并且含二级评论&#xff01; 软件界面截图&#xff1a; 爬取结果截图&#xff1a; 软件说明: 软件运行演示视频&#xff1a; https://www.bilibili.com/video/BV1Mp421U7AM 完整讲解文章&a…

常用数据存储介质

固态硬盘&#xff08;SSD&#xff09;、移动硬盘和机械硬盘&#xff08;HDD&#xff09;是三种不同类型的存储设备&#xff0c;它们在技术、性能和用途上有所区别&#xff1a; 固态硬盘&#xff08;SSD&#xff09;&#xff1a; 存储介质&#xff1a;使用闪存&#xff08;NAND闪…

文字模型训练分析评论(算法实战)

文字模型训练&#xff0c;尤其是在自然语言处理&#xff08;NLP&#xff09;领域&#xff0c;是构建能够理解、解释、生成人类语言系统的核心步骤。这类模型广泛应用于文本分类、情感分析、机器翻译、聊天机器人、摘要生成等多个方面。针对文字模型训练后的分析评论&#xff0c…

生物制药中的AI困境:创新突破还是过度炒作?

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

GO异步学习

GO异步学习 文章目录 GO异步学习了解异步1. 使用 Goroutines2. 使用 Channels3. 选择语句&#xff08;Select Statement&#xff09;4. 错误处理与同步 功能特点Goroutine基本使用启动 Goroutine 使用场景**I/O 密集型任务****并行计算****处理并发请求** 注意事项**资源管理**…

springboot集成guava布隆过滤器

1.创建springboot项目&#xff0c;引入maven依赖 <dependency><groupId>com.google.guava</groupId><artifactId>guava</artifactId><version>23.0</version></dependency>2.创建guava布隆过滤器 Component public class Gua…

【Qt】 QComboBox | QSpinBox

文章目录 QComboBox —— 下拉框QComboBox 属性核心方法核心信号QComboBox 使用 QSpinBoxQSpinBox 属性核心信号QSpinBox 使用 QComboBox —— 下拉框 QComboBox 属性 QComboBox —— 表示下拉框 currentText ——当前选中的文本 currentindex ——当前选中的条目下标 从0开…

【已解决】win11笔记本电脑突然无法检测到其他显示器 / 无法使用扩展屏(2024.8.29 / 驱动更新问题)

我们点击 winx &#xff0c;找到设备管理器&#xff0c;查看显示适配器&#xff1a; 主要问题就出现在 NVIDIA GeForce RTX 3060 Laptop GPU 上&#xff08;虽然我把所有驱动都重新更新了一遍&#x1f62d;&#xff09;。 常用驱动更新&#xff1a; dell 驱动更新&#xff08…

ES6基础----Map的使用

目录 Map 是 Es6 新增的数据结构&#xff0c;主要用于存储键值对 1、size 属性返回 Map 的长度 2、set() 方法用于向 Map 中写入内容 ---键可以用字符串或者用其他数据类型&#xff0c;但是 Object 只能是字符串 3、get() 方法用于得到对应的值 4、delete() 方法删除对应…

岩石检测检测系统源码分享 # [一条龙教学YOLOV8标注好的数据集一键训练_70+全套改进创新点发刊_Web前端展示]

岩石检测检测系统源码分享 [一条龙教学YOLOV8标注好的数据集一键训练_70全套改进创新点发刊_Web前端展示] 1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 项目来源AACV Association for the Advancement of Computer Vision …

Netflix Feign:微服务HTTP调用如何简化?

Netflix Feign&#xff1a;微服务HTTP调用如何简化&#xff1f; 1、什么是Netflix Feign&#xff1f;2、Feign的优点3、示例4、总结 &#x1f496;The Begin&#x1f496;点点关注&#xff0c;收藏不迷路&#x1f496; 1、什么是Netflix Feign&#xff1f; Feign是一个声明式的…

力扣862.和至少为K的最短子数组

力扣862.和至少为K的最短子数组 双端单调队列 前缀和 用单调队列存遍历过的前缀和&#xff0c;同时两个优化 1. 2. class Solution {public:int shortestSubarray(vector<int>& nums, int k) {int n nums.size(),ans n 1;long s[n1];s[0] 0L;for(int i0;i…

《C++与新兴数据库技术的完美交互:开启高效数据处理新时代》

在当今快速发展的科技领域&#xff0c;数据库技术不断推陈出新&#xff0c;为数据的存储、管理和检索带来了更高效、更灵活的解决方案。而 C作为一种强大的编程语言&#xff0c;如何更好地与新兴的数据库技术进行交互&#xff0c;成为了众多开发者关注的热点问题。 一、新兴数…