微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

适用于Linux的自定义脚本扩展-无法运行ora2pg命令

如何解决适用于Linux的自定义脚本扩展-无法运行ora2pg命令

我是Azure的新手。

我们创建了一个小的POC,我需要在其中选择该VM所在的VM名称和资源组名称。然后,我需要提及需要执行的命令,然后单击执行按钮以执行该命令。

现在我做了什么,我在linux中创建了一个脚本,在其中给出了一些ora2pg命令。因此,当我尝试通过传递一些参数直接在VM上运行该脚本时,会发生什么情况,它运行正常,没有任何错误

但是当我尝试遍历我创建的POC时使用相同的脚本(通过提供虚拟机名称,资源组名称,然后传递我要执行的命令),则会出现此错误-

成功启用:[stdout]模式名称:OT表的会话 OT模式已启动OT模式的视图会话已开始 开始进行OT模式的程序包对话顺序对话 用于OT模式启动的会话类型已开始 OT模式的触发器的对话已开始功能对话 OT模式已启动OT模式的过程已开始 成功复制到OT_SCHEMA [stderr] install_driver(Oracle) 失败:无法加载'/usr/local/lib64/perl5/auto/DBD/Oracle/Oracle.so' 对于模块DBD :: Oracle:libclntsh.so.18.1:无法打开共享对象 文件:/usr/lib64/perl5/DynaLoader.pm行中没有这样的文件或目录 193.在(eval 14)第3行。在(eval 14)第3行的require中,编译失败。可能未在以下位置安装所需的共享库或dll: 预期在/usr/local/share/perl5/Ora2Pg.pm第1660行。 install_driver(Oracle)失败:无法加载 '/usr/local/lib64/perl5/auto/DBD/Oracle/Oracle.so'用于模块 DBD :: Oracle:libclntsh.so.18.1:无法打开共享对象文件:否 此类文件或目录位于/usr/lib64/perl5/DynaLoader.pm第193行。 (评估14)第3行。(评估14)第3行的要求编译失败。 可能未在其中安装必需的共享库或dll 预期在/usr/local/share/perl5/Ora2Pg.pm第1660行。 install_driver(Oracle)失败:无法加载 '/usr/local/lib64/perl5/auto/DBD/Oracle/Oracle.so'用于模块 DBD :: Oracle:libclntsh.so.18.1:无法打开共享对象文件:否 此类文件或目录位于/usr/lib64/perl5/DynaLoader.pm第193行。 (评估14)第3行。(评估14)第3行的要求编译失败。 可能未在其中安装必需的共享库或dll 预期在/usr/local/share/perl5/Ora2Pg.pm第1660行。 install_driver(Oracle)失败:无法加载 '/usr/local/lib64/perl5/auto/DBD/Oracle/Oracle.so'用于模块 DBD :: Oracle:libclntsh.so.18.1:无法打开共享对象文件:否 此类文件或目录位于/usr/lib64/perl5/DynaLoader.pm第193行。 (评估14)第3行。(评估14)第3行的要求编译失败。 可能未在其中安装必需的共享库或dll 预期在/usr/local/share/perl5/Ora2Pg.pm第1660行。 install_driver(Oracle)失败:无法加载 '/usr/local/lib64/perl5/auto/DBD/Oracle/Oracle.so'用于模块 DBD :: Oracle:libclntsh.so.18.1:无法打开共享对象文件:否 此类文件或目录位于/usr/lib64/perl5/DynaLoader.pm第193行。 (评估14)第3行。(评估14)第3行的要求编译失败。 可能未在其中安装必需的共享库或dll 预期在/usr/local/share/perl5/Ora2Pg.pm第1660行。 install_driver(Oracle)失败:无法加载 '/usr/local/lib64/perl5/auto/DBD/Oracle/Oracle.so'用于模块 DBD :: Oracle:libclntsh.so.18.1:无法打开共享对象文件:否 此类文件或目录位于/usr/lib64/perl5/DynaLoader.pm第193行。 (评估14)第3行。(评估14)第3行的要求编译失败。 可能未在其中安装必需的共享库或dll 预期在/usr/local/share/perl5/Ora2Pg.pm第1660行。 install_driver(Oracle)失败:无法加载 '/usr/local/lib64/perl5/auto/DBD/Oracle/Oracle.so'用于模块 DBD :: Oracle:libclntsh.so.18.1:无法打开共享对象文件:否 此类文件或目录位于/usr/lib64/perl5/DynaLoader.pm第193行。 (评估14)第3行。(评估14)第3行的要求编译失败。 可能未在其中安装必需的共享库或dll 预期在/usr/local/share/perl5/Ora2Pg.pm第1660行。 install_driver(Oracle)失败:无法加载 '/usr/local/lib64/perl5/auto/DBD/Oracle/Oracle.so'用于模块 DBD :: Oracle:libclntsh.so.18.1:无法打开共享对象文件:否 此类文件或目录位于/usr/lib64/perl5/DynaLoader.pm第193行。 (评估14)第3行。(评估14)第3行的要求编译失败。 可能未在其中安装必需的共享库或dll 预期在/usr/local/share/perl5/Ora2Pg.pm第1660行。

注意-我的Linux VM在Azure中,并且正在使用Linux扩展的自定义脚本来运行所有命令。我已将脚本移动到bin文件夹,以便仅传递名称即可运行该脚本。

我在Linux的环境路径中提到了以下内容-

export ORACLE_HOME=/usr/lib/oracle/18.3/client64
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export PATH=$PATH:$ORACLE_HOME/bin:/usr/pgsql-12/bin/

我的perl版本是5.26

正如我说的那样,当我尝试从VM运行时一切正常,但是当我尝试通过POC运行时却出现了这个问题。

有人能帮助我解决我落后的问题吗?!

谢谢。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。