perl DBD::oracle
一、安裝需要的包
在linux下透過perl指令碼直接訪問oracle,需安裝如下包:
perl-DBI ~timb/DBI-1.621/
perl-DBD:;Oracle ~pythian/DBD-Oracle-1.44/
如果是連線遠端資料庫還需要安裝oracle instance client, client/index-097480.html,選擇合適的版本,下載basic、sqlplus、sdk三個軟體,解壓即可
二、設定環境變數並建立TNSNAME檔案
在.bash_profile檔案裡設環境變數
ORACLE_HOME=/****/instantclient_10_2 #設定為剛才解壓的oracle instacne client 主目錄
TNS_ADMIN=$ORACLE_HOME/network/admin
LD_LIBRARY_PATH=$ORACLE_HOME
echo ORACLE_HOME TNS_ADMIN LD_LIBRARY
在TNS_ADMIN下建立tnsnames.ora,內容為你需要連線的資料庫的連線串
三、寫個perl指令碼測試
#!/usr/bin/perl
use DBI;
$sid="***";
$user="***";
$passwd="***";
$dbh = DBI->connect("dbi:Oracle:$sid","$user","$passwd") or die "can't connect to database ". DBI-errstr;
#連線資料庫
$sth=$dbh->prepare("select tablespace_name,status from dba_tablespaces");
$sth->execute;
#執行sql語句
while (@recs=$sth->fetchrow_array) {
print $recs[0].":".$recs[1]."\n";
}
$dbh->disconnect;
執行指令碼結果如下:
# perl ora_connect2.pl
SYSTEM:ONLINE
UNDOTBS:ONLINE
SYSAUX:ONLINE
TEMP:ONLINE
USERS:ONLINE
LISCODE:ONLINE
LIS:ONLINE
TS_LOGMNR:ONLINE
CALLERTBS:ONLINE
LISBASE:ONLINE
LISDATA:ONLINE
BJJH:ONLINE
四、一般出錯都是環境變數設定問題,要不就是SID解析問題,關於perl DBD:;ORACLE的詳細說明,可參考官方文件~pythian/DBD-Oracle-1.44/lib/DBD/Oracle.pm
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/27042095/viewspace-753363/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 基於oracle linux的 DBI/DBD 標準化安裝OracleLinux
- perl
- Perl語言學習(四)Perl控制結構
- perl的logwrapperAPP
- Perl&LWP
- perl指令碼指令碼
- 使用perl cpan
- perl 安裝
- perl+xml+iniXML
- Perl Catalyst 倒出 ExcelExcel
- Perl常用語法
- perl分析apache日誌Apache
- perl替換特殊字元字元
- perl語言入門
- perl在apache上部署Apache
- dashBoard 經驗總結 --DBD 失真問題的最佳化
- 報錯install_driver(mysql) failed: Attempt to reload DBD/mysql.pmMySqlAI
- [譯][Perl 6] 5to6-perlfunc
- [譯][Perl 6] 5to6-nutshell
- Perl語法的基本規則
- Perl讀寫檔案&字串操作字串
- PERL 5.8的反序列化
- 講 perl debug 的不錯文章
- 使用perl比較mysql的版本MySql
- 送你一份perl書單
- 鋼絲網骨架聚乙烯管施工完成後該如何驗收DBD
- perl 裡邊的 函式指標函式指標
- Perl IO:隨機讀寫檔案隨機
- 使用Perl和WWW::Mechanize庫編寫
- bash shell 無法使用 perl 正則
- perl的hash轉json後按key排序JSON排序
- Perl程式:殭屍程式和孤兒程式
- Chapter 5:Perl One-Liners:Working with Arrays and StringsAPT
- perl next, last, regular expression 實用場景ASTExpress
- 教你用Perl實現Smgp協議協議
- 如何編寫一個Perl爬蟲程式爬蟲
- Perl資料型別安全研究【翻譯】資料型別
- mod_perl到底是個什麼
- Perl split字串分割函式用法指南字串函式