日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

oracle -239报错,解决: ./check_oracle_health --connect orcl --mode connection-time 报错的问题...

發(fā)布時間:2023/12/9 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle -239报错,解决: ./check_oracle_health --connect orcl --mode connection-time 报错的问题... 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

錯誤提示

./check_oracle_health --connect orcl --mode connection-time

CRITICAL - cannot connect to orcl. install_driver(Oracle) failed: Can't locate DBD/Oracle.pm in @INC (@INC contains: . /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5) at (eval 18) line 3.

Perhaps the DBD::Oracle perl module hasn't been fully installed,

or perhaps the capitalisation of 'Oracle' isn't right.

Available drivers: DBM, ExampleP, File, Gofer, Proxy, Sponge, mysql.

at ./check_oracle_health line 5891

解決 install_driver oracle failed can't locate dbd/oracle.pm in @inc

兩種方法,這個可以用上面的方法下截

cpan[1]:install DBD::Oracle ?可能不能直接安裝原因如下:

……

Running make install

Make had some problems, won't install

Could not read '/root/.cpan/build/DBD-Oracle-1.74-Zrp_Am/META.yml'. Falling back to other methods to determine prerequisites

Failed during this command:

PYTHIAN/DBD-Oracle-1.74.tar.gz ? ? ? ? ? ? ? : writemakefile NO '/usr/bin/perl Makefile.PL INSTALLDIRS=site' returned status 512

但是包已經(jīng)下載下來了,可以查看下載記錄

正在保存至: “/root/.cpan/sources/authors/id/P/PY/PYTHIAN/DBD-Oracle-1.74.tar.tmp27681”

可以以find查找可得 /root/.cpan/sources/authors/id/P/PY/PYTHIAN/DBD-Oracle-1.74.tar.gz

然后移動當前目錄 :mv /root/.cpan/sources/authors/id/P/PY/PYTHIAN/DBD-Oracle-1.74.tar.gz ../

tar xvzf DBD-Oracle-1.74.tar.gz 注意文件夾權(quán)限

cd 后make提示:make: *** 沒有指明目標并且找不到 makefile。 停止。

查詢后得之:要先編譯:這里用perl編譯:perl Makefile.PL ?[.PL是perl的可執(zhí)行文件,可以ll查看,其它安裝方法可以查看解壓包里的INSTALL文件說明]

因為要與oracle的目錄相關(guān) 即環(huán)境變量要加載$ORACLE_HOME 可以echo得出

[root@localhost DBD-Oracle-1.74]# export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_1

[root@localhost DBD-Oracle-1.74]# echo $ORACLE_HOME

然后Make&&Make install

再su - oracle用戶下執(zhí)行check_oracle_health命令查看結(jié)果

[oracle@localhost libexec]$ ./check_oracle_health --connect orcl --mode connection-time --user ****** --password ******

OK - 0.08 seconds to connect as YOUGOU_CC | connection_time=0.0832;1;5

表明已經(jīng)成功!

如果報以下錯誤可以檢查一下相應(yīng)的目錄文件

1、CRITICAL - cannot connect to orcl. install_driver(Oracle) failed: DBD::Oracle object version 1.20 does not match bootstrap parameter 1.74 at /usr/lib64/perl5/DynaLoader.pm line 239.

Compilation failed in require at (eval 18) line 3.

at ./check_oracle_health line 5891

可能是安裝的DBD::Oracle模塊的版本問題,看一下目錄/usr/local/nagios/DBD-Oracle-1.74/blib/arch/auto/DBD/Oracle/Oracle.so 文件與安裝的Oracle版本自帶的Oracle.so不一置,這個和程序的環(huán)境變量有關(guān)看你用那一個了,最好是一置,我的是DBD-Oracle.tar.gz故執(zhí)行文件也得是這個1.74的Oracle.so

一定不要cp $ORACLE_HOME/perl/lib/site_perl/5.10.0/x86_64-linux-thread-multi/auto/DBD/Oracle/Oracle.so

# echo $ORACLE_HOME/lib >> /etc/ld.so.conf

# ldconfig

類似

ldconfig: 文件 /home/oracle/app/product/11.2.0/dbhome_1/lib/libnmefdms.so.0 為空,未檢查。

……

ldconfig: /home/oracle/app/product/11.2.0/dbhome_1/lib/libexpat.so.1 不是符號連接

再次執(zhí)行命令一般都OK了……

OK - 0.29 seconds to connect as YOUGOU_CC | connection_time=0.2922;1;5

顯示成功;

-------------------

2、Time::HiRes object version 1.9726 does not match $Time::HiRes::XS_VERSION 1.9712 at /usr/lib64/perl5/DynaLoader.pm line 239.

Compilation failed in require at ./check_oracle_health line 4746.

BEGIN failed--compilation aborted at ./check_oracle_health line 4746.

類似這樣的報錯是因為HiRes.pm模塊版本問題,要么重裝要么拷一下之前perl -MCPAN -s shell 下載來的那個文件/root/.cpan/build/Time-HiRes-1.9726-euaQ_5/HiRes.pm覆蓋目錄?/usr/local/lib64/perl5/Time/下的解決之。

3、./check_oracle_health --connect orcl --mode tnsping

DynaLoader object version 1.10 does not match $DynaLoader::VERSION 1.08 at /usr/lib64/perl5/DynaLoader.pm line 93.

Compilation failed in require at /usr/local/lib64/perl5/Time/HiRes.pm line 7.

Compilation failed in require at ./check_oracle_health line 4746.

BEGIN failed--compilation aborted at ./check_oracle_health line 4746.

表示DynaLoader索引版本不一致需要1.10的版本,當前為1.08,下載相應(yīng)版本解決,或者直接替換DynaLoader.pm解決。附文件 存放或者替換目錄/usr/lib64/perl5/DynaLoader.pm即可。

總結(jié)

以上是生活随笔為你收集整理的oracle -239报错,解决: ./check_oracle_health --connect orcl --mode connection-time 报错的问题...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。