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

news2024/11/15 23:31:52

目录

前言

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.coloradmin.cn/o/2089680.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Keil5 Debug模式Watch窗口添加的监控变量被自动清除

Keil5 Debug模式Watch窗口添加的监控变量被自动清除 问题解决记录 问题描述:每次进入Debug模式时,watch窗口里面上一次调试添加的监控变量都会被全部清掉 如图: 退出Debug模式后,重新进入Debug模式: 解决方法&…

用户体验设计案例:提升电商网站的用户体验

在数字化时代,用户体验设计(UX Design)已成为影响品牌成功的关键因素之一。尤其是在竞争激烈的电商行业,如何通过优质的用户体验来吸引和留住客户,是每个企业都需要面对的挑战。本文将通过一个具体的电商网站设计案例&…

解析 uni-app 小程序分包策略:合理优化包体积分布

引言 微信小程序的流行使得越来越多的开发者投入到小程序的开发中。但是,随着项目规模的增大,小程序的性能也会面临一些挑战。其中,小程序分包策略是提升性能的重要一环。 同时,uni-app 的流行也使众多的移动端开发者选择使用 u…

AcWing895. 最长上升子序列

这个代码不知道怎么说&#xff0c;反正就是对着代码手算一次就懂了&#xff0c;无需多言&#xff0c;就是俩for循环里面的第二层for的循环条件是j<i,j是从下标1往下标i-1遍历的&#xff0c;每次a【j】<a【i】就在答案数组f【i】上面做出更新。基本的输入样例已经可以覆盖…

揭秘数字水印技术:使用PyQt5实现图像中的LSB隐写术

在当今的数字化世界中&#xff0c;保护信息的安全性和隐秘性变得尤为重要。无论是在保护版权的数字水印&#xff0c;还是在隐秘传输信息的过程中&#xff0c;数字隐写术&#xff08;Steganography&#xff09;都是一种不可或缺的技术。今天&#xff0c;我们将带领大家探索一种简…

关于LLC知识14

1、LLC必须工作在感性区 2、为了降低LLC进入容性区后MOS管的电流应力&#xff0c;必须要选择快管&#xff0c;对体二极管的反向恢复参数有要求&#xff1a;trr<200ns 3、对于上下管的死区时间不能太短&#xff0c;否则电容无法充放电完成&#xff0c;就无法实现ZVS导通 如…

DNN学习平台(GoogleNet、SSD、FastRCNN、Yolov3)

DNN学习平台&#xff08;GoogleNet、SSD、FastRCNN、Yolov3&#xff09; 前言相关介绍1&#xff0c;登录界面&#xff1a;2&#xff0c;主界面&#xff1a;3&#xff0c;部分功能演示如下&#xff08;1&#xff09;识别网络图片&#xff08;2&#xff09;GoogleNet分类&#xf…

短视频去哪里找素材?16个有短视频素材APP网站分享给你

短视频创作爱好者们&#xff0c;你们好&#xff01;在这个充斥视觉内容的年代&#xff0c;制作一部引人注目的短视频无疑是一项挑战&#xff0c;但也是一种艺术。要想打造出色的视频内容&#xff0c;首先需要的是高质量的素材。今天&#xff0c;我将向大家推荐几个非常棒的短视…

windows安装macos虚拟机

我用的是macOS Ventura 13.5(22G74) MH.iso 下载链接 https://macoshome.com/macos/20492.html#Down 一、下载unlocker 用于给VMware提供macos选项 下载链接 https://github.com/DrDonk/unlocker/releases/tag/v4.2.7下载好后解压&#xff0c;进入windows目录&#xff0c;双…

鸿蒙(API 12 Beta3版)【通过字节数组生成码图】

基本概念 码图生成能力支持将字节数组转换为自定义格式的码图。 场景介绍 码图生成能力支持将字节数组转换为自定义格式的码图。 例如&#xff1a;调用码图生成能力, 将字节数组转换成交通一卡通二维码使用。 约束与限制 只支持QR Code生成&#xff0c;根据纠错水平不同对…

mysql中的mysql 库不存在,进行恢复

mysql中的mysql 库不存在&#xff0c;进行恢复 解决方法&#xff1a; 关闭数据库 service mysqld stop 以跳过权限认证方式启动mysql mysqld_safe --defaults-file/etc/my.cnf --skip-grant-tables & 在输入&#xff1a;mysql -u root 在输入&#xff1a;use mysql 在输…

【PyQt5 应用程序】一个数据可视化案例

为了提供一个数据可视化应用的示例将创建一个简单的应用程序,该程序展示了如何使用PyQt和Qt Charts模块来绘制一个柱状图和一个曲线图。 这个示例将展示销售数据的趋势。 请确保已经安装了PyQt5和PyQtChart。如果没有安装可以通过pip安装它们: pip install PyQt5 PyQtChart…

Linux Debian12使用flameshot或gnome-screenshot和ImageMagick垂直合并多张图片后组成一张滚动长图

在发布博客&#xff0c;有时需要滚动截长图&#xff0c;虽然在windows系统有滚动截长图的工具&#xff0c;例如&#xff1a;FastStone Capture等&#xff0c;但是Linux Debian系统&#xff0c;这种滚动截长图的工具没有找到合适的。经过自己筛选验证&#xff0c;发现Linux Debi…

四、生成房间之间的连线

一、连线 使用LineRenderer组件&#xff0c;调整坐标轴&#xff0c;更改线的粗细 需要给这个组件创建一个材质&#xff0c;最后制作成预制体进行实例化&#xff1b; 二、声明线组件 创建哈希列表 哈希列表中没有重复的数值&#xff0c;而list中有重复的 在此项目中&#xff…

【香橙派系列教程】(二十一) 基于OrangePi Zero2的系统移植— 交叉编译工具链配置

【二十一】基于OrangePi Zero2的系统移植— 交叉编译工具链配置 文章目录 【二十一】基于OrangePi Zero2的系统移植— 交叉编译工具链配置1.关于编译2.本地编译3.交叉编译 1.关于编译 编译是指将源代码文件&#xff08;如C/C文件&#xff09;经过预处理、编译、汇编和链接等步…

P1509 找啊找啊找GF

人才出题人&#xff0c;挺会整活的。。。 一眼二维费用背包。 题目要求不单单是求最小时间&#xff0c;还要保证MM数量最多。 需要开两个数组f,dp,分别代表给定人品&#xff0c;钱能get到的最多MM数量&#xff0c;确保最多数量下的最少时间花费。 将人品&#xff0c;钱作为…

开关电源测试设备的自动化测试与测试项目

在军工、工业自动化控制、医疗设备等关键领域&#xff0c;开关电源扮演着至关重要的角色。而如何确保这些电源的质量与性能&#xff0c;开关电源自动测试设备为我们提供了答案。 开关电源测试 开关电源测试是为了检测电源的性能和质量&#xff0c;从而全面测试开关电源的各项参…

【Blender】快捷键_ 学习日志_01

【Blender】快捷键_ 学习日志_01 学习了blender的快捷键的使用。 2024年8月30日 视角操控 围绕中心旋转&#xff1a;按住鼠标中建 平移视角&#xff1a;Shift鼠标中键 视角前进后退&#xff1a;滚动滚轮 视图切换 0 切换到摄像机视图 1 切换正试图 2&#xff0c;4&…

【赵渝强老师】Redis的管道Pipeline

Redis使用的是客户端-服务器&#xff08;C-S&#xff09;模型和请求/响应协议的TCP服务器。这意味着通常情况下一个请求会遵循以下步骤&#xff1a; 第一步&#xff1a;客户端向服务端发送一个查询请求&#xff0c;并监听Socket返回&#xff0c;通常是以阻塞模式&#xff0c;等…

★ 算法OJ题 ★ 力扣11 - 盛水最多的容器

Ciallo&#xff5e;(∠・ω< )⌒☆ ~ 今天&#xff0c;我将和大家一起做一道双指针算法题--盛水最多的容器~ 目录 一 题目 二 算法解析 三 编写算法 一 题目 11. 盛最多水的容器 - 力扣&#xff08;LeetCode&#xff09; 二 算法解析 解法1&#xff1a;暴力枚举 …