1

我是 Azure 的新手。

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

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

但是,当我尝试运行我创建的 POC(通过提供 VM 名称、资源组名称,然后传递我想要执行的命令)时,相同的脚本给出了这个错误 -

启用成功:[stdout] 模式名称:OT OT 模式的表对话开始 OT 模式的视图对话开始 OT 模式的包对话开始 OT 模式的序列对话开始 OT 模式的类型对话开始 OT 触发器的对话模式已启动 OT 模式的功能对话已启动 OT 模式的过程对话已启动 成功复制到 OT_SCHEMA [stderr] install_driver(Oracle) 失败:无法加载 '/usr/local/lib64/perl5/auto/DBD/Oracle/Oracle .so' for module DBD::Oracle: libclntsh.so.18.1: cannot open shared object file: No such file or directory at /usr/lib64/perl5/DynaLoader.pm line 193. at (eval 14) line 3. 编译在(eval 14)第 3 行的 require 失败。可能需要的共享库或 dll 不是t 安装在 /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 行没有这样的文件或目录。在(eval 14)第 3 行。编译失败在要求在(eval 14)第 3 行。可能在 /usr/local/share/perl5/Ora2Pg.pm 第 1660 行的预期位置未安装所需的共享库或 dll。 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) failed: Can't load '/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 行的要求中编译失败。可能在 /usr/local/share/perl5/Ora2Pg.pm 第 1660 行的预期位置未安装所需的共享库或 dll。 install_driver(Oracle)失败:无法为模块 DBD::Oracle 加载“/usr/local/lib64/perl5/auto/DBD/Oracle/Oracle.so”:libclntsh.so.18.1:无法打开共享对象文件:没有这样的文件或目录在 /usr/lib64/perl5/DynaLoader.pm 第 193 行。在 (eval 14) 第 3 行。在(eval 14)第 3 行的 require 中编译失败。可能在 /usr/local/share/perl5/Ora2Pg.pm 第 1660 行的预期位置未安装所需的共享库或 dll。 install_driver(Oracle) 失败:不能为模块 DBD::Oracle 加载“/usr/local/lib64/perl5/auto/DBD/Oracle/Oracle.so”:libclntsh.so.18.1:无法打开共享对象文件:/usr/lib64 中没有这样的文件或目录/perl5/DynaLoader.pm 第 193 行。在 (eval 14) 第 3 行。在 (eval 14) 第 3 行的 require 编译失败。可能在 /usr/local/share/ 的预期位置没有安装所需的共享库或 dll perl5/Ora2Pg.pm 第 1660 行。 install_driver(Oracle) 失败:无法为模块 DBD::Oracle: libclntsh.so.18.1 加载“/usr/local/lib64/perl5/auto/DBD/Oracle/Oracle.so” :无法打开共享对象文件:/usr/lib64/perl5/DynaLoader 中没有这样的文件或目录。pm line 193. at (eval 14) line 3. Compilation failed in require at (eval 14) line 3. 可能所需的共享库或 dll 未安装在 /usr/local/share/perl5/Ora2Pg.pm 的预期位置第 1660 行。 install_driver(Oracle) 失败:无法为模块 DBD::Oracle: libclntsh.so.18.1 加载“/usr/local/lib64/perl5/auto/DBD/Oracle/Oracle.so”:libclntsh.so.18.1:无法打开共享对象文件:/usr/lib64/perl5/DynaLoader.pm 第 193 行没有这样的文件或目录。在(eval 14)第 3 行。编译在(eval 14)第 3 行失败。可能需要的共享库或 dll 不是t 安装在 /usr/local/share/perl5/Ora2Pg.pm 第 1660 行的预期位置。install_driver(Oracle) 失败:无法为模块 DBD::Oracle 加载“/usr/local/lib64/perl5/auto/DBD/Oracle/Oracle.so”: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) 失败:无法为模块 DBD::Oracle 加载“/usr/local/lib64/perl5/auto/DBD/Oracle/Oracle.so”: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 行。t 安装在 /usr/local/share/perl5/Ora2Pg.pm 第 1660 行的预期位置。t 安装在 /usr/local/share/perl5/Ora2Pg.pm 第 1660 行的预期位置。

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

我在 linux 的 env 路径中提到了以下内容-

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 运行时,它给出了这个问题。

谁能帮我解决我落后的问题?!

提前致谢。

4

0 回答 0