2014/04/27

OS X MavericksにOracle Instant Client(11.2.0.4.0)をインストールする

気づくと OS X 用の Instant Client の 11.2.0.4.0 がダウンロードできるようになっていましたので、前回 Lion の時と同じようにしてインストールしてみました。

ダウンロード

せっかくなので以下の記事を参考に wget によるバッチダウンロードを試行してみます。 Google Chrome 拡張 cookie.txt export を使ってダウンロードページで OTN License に同意した後の Cookie をエクスポートしてシェルスクリプトで一括ダウンロードします。
% wget -O- https://gist.githubusercontent.com/yoshikaw/11336542/raw/f41d21ef09a6f71ef3319bd0472910a118966cf0/download_oracle_instant_client.sh | bash

インストール

インストール作業は zip ファイルを任意の場所に解凍するだけ。

% for f in ~/Downloads/instantclient-*-macos.x64-11.2.0.4.0.zip; do unzip -o $f -d ~/local; done
環境変数 DYLD_FALLBACK_LIBRARY_PATH をその場所に設定するだけで使えます。
% cd ~/local/instantclient_11_2
% env DYLD_FALLBACK_LIBRARY_PATH=$PWD ./sqlplus scott/tiger@//ol64.vbox/xe

SQL*Plus: Release 11.2.0.4.0 Production on Sun Apr 27 11:11:45 2014

Copyright (c) 1982, 2013, Oracle.  All rights reserved.


Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production

(2014-04-27 11:11:46) SCOTT >
SQL*Plus が参照しているライブラリをみると libsqlplus.dylib が /ade/b/数字ディレクトリでは無く /ade/dosulliv_sqlplus_mac に変わっていますね。
% otool -L ~/local/instantclient_11_2/sqlplus
/Users/yoshikaw/local/instantclient_11_2/sqlplus:
        /ade/dosulliv_sqlplus_mac/oracle/sqlplus/lib/libsqlplus.dylib (compatibility version 0.0.0, current version 0.0.0)
        /ade/b/2475221476/oracle/rdbms/lib/libclntsh.dylib.11.1 (compatibility version 0.0.0, current version 0.0.0)
        /ade/b/2475221476/oracle/ldap/lib/libnnz11.dylib (compatibility version 0.0.0, current version 0.0.0)
        /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 159.1.0)

アーカイブ内のファイル一覧

for f in ~/Downloads/instantclient-*-macos.x64-11.2.0.4.0.zip; do unzip -l $f; done | grep instantclient_11_2 | perl -pe 's/( *\d+) +(\d+-\d+)-(\d+) (.{5}) +/20$3-$2 $4 $1 /' | sort -u
2001-04-25 02:04        60 instantclient_11_2/sdk/demo/occiobj.typ
2002-10-15 18:19      2115 instantclient_11_2/sdk/include/occi.h
2003-03-06 15:45      1868 instantclient_11_2/sdk/demo/occidemod.sql
2003-06-10 05:40     42626 instantclient_11_2/sdk/include/oro.h
2004-08-05 14:16      7202 instantclient_11_2/sdk/demo/occidemo.sql
2005-07-07 19:38      4048 instantclient_11_2/sdk/include/ocidem.h
2005-07-07 19:38      8953 instantclient_11_2/sdk/include/ociextp.h
2005-07-07 19:38    116645 instantclient_11_2/sdk/include/ort.h
2005-07-07 19:39     10361 instantclient_11_2/sdk/include/oci8dp.h
2005-08-26 14:04     11586 instantclient_11_2/sdk/include/occiAQ.h
2005-09-26 03:58      6204 instantclient_11_2/sdk/include/ociapr.h
2005-09-26 03:58      6494 instantclient_11_2/sdk/include/ocikpr.h
2005-09-26 03:58     43001 instantclient_11_2/sdk/include/ocidef.h
2005-09-26 03:59      7203 instantclient_11_2/sdk/include/oci1.h
2005-09-26 03:59     11339 instantclient_11_2/sdk/include/ocidfn.h
2006-06-02 21:12     14313 instantclient_11_2/sdk/demo/cdemo81.c
2006-08-02 13:13     15083 instantclient_11_2/sdk/include/orid.h
2006-08-02 13:13    102775 instantclient_11_2/sdk/include/ori.h
2006-08-02 13:13    157901 instantclient_11_2/sdk/include/orl.h
2006-09-06 12:59      9892 instantclient_11_2/sdk/include/xa.h
2006-11-08 13:43      4816 instantclient_11_2/sdk/demo/occiobj.cpp
2007-10-30 12:29     24778 instantclient_11_2/sdk/include/occiObjects.h
2007-12-08 10:50     74787 instantclient_11_2/sdk/include/nzt.h
2008-04-11 09:15     34750 instantclient_11_2/sdk/include/occiCommon.h
2008-05-27 17:35      7564 instantclient_11_2/sdk/demo/occidml.cpp
2008-09-27 08:32     42534 instantclient_11_2/sdk/include/ldap.h
2009-03-20 14:32     70685 instantclient_11_2/sdk/include/occiControl.h
2009-06-04 17:43       869 instantclient_11_2/sdk/ott
2010-02-12 06:14     23384 instantclient_11_2/sdk/include/odci.h
2010-02-16 17:50     39934 instantclient_11_2/sdk/include/occiData.h
2011-04-11 14:57       368 instantclient_11_2/glogin.sql
2011-04-19 01:16    431569 instantclient_11_2/sdk/include/ociap.h
2011-04-30 04:36     34962 instantclient_11_2/sdk/include/nzerror.h
2011-06-17 01:15    172157 instantclient_11_2/sdk/include/oci.h
2011-06-26 07:29      7506 instantclient_11_2/sdk/include/ocixmldb.h
2012-03-05 20:23      6506 instantclient_11_2/sdk/include/oratypes.h
2013-02-13 05:07    104382 instantclient_11_2/sdk/include/ocixstream.h
2013-08-24 16:23     82856 instantclient_11_2/orai18n-mapping.jar
2013-08-24 16:23   1655734 instantclient_11_2/orai18n.jar
2014-01-07 23:25     13744 instantclient_11_2/libheteroxa11.dylib
2014-01-07 23:25    159004 instantclient_11_2/libocijdbc11.dylib
2014-01-08 01:04     66779 instantclient_11_2/xstreams.jar
2014-01-08 01:18   1504252 instantclient_11_2/libsqlplusic.dylib
2014-01-28 00:09      8744 instantclient_11_2/sqlplus
2014-01-28 00:09   1365444 instantclient_11_2/libsqlplus.dylib
2014-01-29 02:28   2091135 instantclient_11_2/ojdbc5.jar
2014-01-29 02:28   2739616 instantclient_11_2/ojdbc6.jar
2014-01-30 03:01   2817872 instantclient_11_2/libnnz11.dylib
2014-02-05 21:40    311342 instantclient_11_2/sdk/ottclasses.zip
2014-02-07 22:40  66167420 instantclient_11_2/libclntsh.dylib.11.1
2014-02-07 23:45   1897664 instantclient_11_2/libocci.dylib.11.1
2014-04-11 00:31     40768 instantclient_11_2/genezi
2014-04-11 00:40       484 instantclient_11_2/BASIC_README
2014-04-11 00:40     14348 instantclient_11_2/adrci
2014-04-11 00:40    162380 instantclient_11_2/uidrvci
2014-04-11 00:40    754728 instantclient_11_2/wrc
2014-04-11 00:40   9880548 instantclient_11_2/libociicus.dylib
2014-04-11 00:40 118707148 instantclient_11_2/libociei.dylib
2014-04-11 00:42       482 instantclient_11_2/JDBC_README
2014-04-11 00:42       488 instantclient_11_2/SQLPLUS_README
2014-04-11 00:42       494 instantclient_11_2/BASIC_LITE_README
2014-04-11 00:43         0 instantclient_11_2/sdk/
2014-04-11 00:43         0 instantclient_11_2/sdk/demo/
2014-04-11 00:43         0 instantclient_11_2/sdk/include/
2014-04-11 00:43       480 instantclient_11_2/sdk/SDK_README
2014-04-11 00:43       484 instantclient_11_2/TOOLS_README
2014-04-11 00:43      4328 instantclient_11_2/sdk/demo/demo.mk
BASIC の README。
% cat BASIC_README
Basic Package Information
=========================

Thu Apr 10 08:40:32 PDT 2014

Client Shared Library 64-bit - 11.2.0.4.0

System name:    Darwin
Release:        11.3.0
Version:        Darwin Kernel Version 11.3.0: Thu Jan 12 18:47:41 PST 2012; root:xnu-1699.24.23~1/RELEASE_X86_64
Machine:        x86_64

Operating in ORACLE_HOME environment.
Small timezone file = /ade/b/1925904643/oracle/oracore/zoneinfo/timezone_14.dat
Large timezone file = /ade/b/1925904643/oracle/oracore/zoneinfo/timezlrg_14.dat
今回試した OS X のバージョン。
% uname -v
Darwin Kernel Version 13.1.0: Wed Apr  2 23:52:02 PDT 2014; root:xnu-2422.92.1~2/RELEASE_X86_64

SDKの動作確認

いつものとおり SDK の動作確認として cpanm で DBD::Oracle をビルドしてみます。

% cpanm DBD::Oracle
--> Working on DBD::Oracle
Fetching http://www.cpan.org/authors/id/P/PY/PYTHIAN/DBD-Oracle-1.74.tar.gz ... OK
Configuring DBD-Oracle-1.74 ... OK
Building and testing DBD-Oracle-1.74 ... OK
Successfully installed DBD-Oracle-1.74 (upgraded from 1.68)
1 distribution installed

おわりに

最近、この手のインストールと設定で終わっていて、そこから先の開発をしてないなーという感じです。

0 件のコメント:

コメントを投稿