Oracle10gをOSXLionにインストールしようとしています。私は以前、Snow Leopardでこれを次のように達成しました チュートリアル 。
私が抱えている問題は、Oracle/.bash_profile
のulimit設定を変更できないことです。
Bash_profileに次のものがあります。
export DISPLAY=:0.0
export Oracle_BASE=$HOME
umask 022
# must match `sysctl kern.maxprocperuid`
ulimit -Hu 512
ulimit -Su 512
# must match `sysctl kern.maxfilesperproc`
ulimit -Hn 10240
ulimit -Sn 10240
Bash_profile設定を適用すると. ~/.bash_profile
次のエラーが発生します。
-bash: ulimit: max user processes: cannot be modify limit: Invalid argument
これにより、$ sqlplus / as sysdba
がSegmentation fault: 11
で正しく機能しなくなります。
$ ulimit -a
の出力
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
file size (blocks, -f) unlimited
max locked memory (kbytes, -l) unlimited
max memory size (kbytes, -m) unlimited
open files (-n) 10240
pipe size (512 bytes, -p) 1
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 512
virtual memory (kbytes, -v) unlimited
Sqlplusをインストールしてデータベースを作成できるようにするために作成したOracleユーザーにこれらのulimit設定を適用する方法を誰かが知っているなら、それは素晴らしいことです。
Oracleとsqlplusをコンパイルしてleopardにインストールし、それらをlionに移動した後はどうでしょうか。例えばbinフォルダー内のsqlplus、tnsnames、Oracleなど?
ユキヒョウの ここでも同様の解決策 を見つけました(セグメンテーションの問題は、バイナリがユキヒョウの下で32ビットモードでコンパイルされ、64ビットのユキヒョウなどに移植されたことでした。)
Ulimitの問題は、kern.maxprocperuid
KernelパラメーターがLionでデフォルト値を709に変更したためです(少なくとも私のMacBook Airではデフォルトでした)。プロファイルスクリプトのコメントで指摘されているように、次の値は次のとおりです。
ulimit -Hu 512
ulimit -Su 512
kern.maxprocperuid
カーネルパラメータ値と一致する必要があります。この値は次の方法で確認できます。
$ sysctl kern.maxprocperuid
私の場合、デフォルトは709だったので、それを.bash_profile
スクリプトに入力しました。
ulimit -Hu 709
ulimit -Su 709
sqlplus
を実行したときのセグメンテーション違反については、解決策が見つかりませんでした。 netca
を正しく実行することもできません。これらはもっと深刻な問題のようです!
私は ブログを投稿しました それが役立つかもしれません。
Snow Leopardで動作し、できればLIONでも動作するはずです。