您的位置:首页 > 数据库 > Oracle

Oracle 10g中安装Perl环境所产生的冲突

2010-12-02 10:28 337 查看
摘自东方瑞通Oracle数据库资深讲师杨老师的一篇工作日志:为了准备下周的oracle 10g培训,今天从官网下载完Active Perl5.10安装完后,写了很简单的Perl脚本,仅引用了一个文件拷贝模块,调用Perl解释器来运行程序的时候,报了一堆错,先是一个弹出框提示 ‘无法启动此程序,计算机丢失Perl58.dll’,点击确定后报出错误信息:Can't load 'D:/oracle/product/10.2.0/db_1/perl/5.8.3/lib/MSWin32-x86-multi-threa d/auto/File/Glob/Glob.dll' for module File::Glob: load_file:找不到指定的模块。 a t D:/oracle/product/10.2.0/db_1/perl/5.8.3/lib/MSWin32-x86-multi-thread/XSLoader .pm line 68.

从上述信息很明显,应该是早前安装的Oracle与新装的Perl冲突了,而且冲突是因为Oracle在安装的时候往我们系统中添加了一个 Perl5Lib的环境变量,而这个环境变量指向的则是Oracle安装目录下那个模块不全的Perl,从信息提示可以知道为Oracle Home/perl目录。

知道了错误原因,那么改的方法就多了去了:

1、经常与oracle打交道而偶尔玩下perl的一类朋友:

如果是这样的话,建议就不要对环境变量Perl5Lib动手了。在运行Perl命令之前,设置下当前命令行窗口的临时Perl5Lib变量就可以 了。如我的Perl10安装在G盘根目录下,则在运行Cmd后,使用命令Set Perl5Lib="G://Perl/bin/"改变下环境变量Perl5Lib的指向,该命令作用域为Session级的,即重开Cmd后还得再次设 置。

2、与上述情况相反的:

可以先备份下Per5lLib的内容,然后将Perl5Lib清空或者设置为G://Perl/Lib即OK

3、两者都经常打交道的:

将G://Perl/Bin加到Perl5Lib的前面,注意,不是替换。

希望这个经验对你有用。Make IT Better。
文章来源:东方瑞通
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: