#topicpath ---- * 参考文献 [#x3c41ea5] - [[Oracle Database インストレーション・ガイド 10g リリース2(10.2)for Solaris Operating System (SPARC 64-bit):http://otndnld.oracle.co.jp/document/products/oracle10g/102/solaris/B25025-02/toc.htm]] - http://www.gadgety.net/shin/tips/unix/solaris.html * 環境 [#e131edfa] - Sun Ultra80 - Solaris10 05/09 SPARC - Sun Studio 11 - Oracle 10g R2 (10.2.0.1.0) * 前準備 [#q7abfd18] #pre{{ bash-3.00# pkginfo -i SUNWarc SUNWbtool SUNWhea SUNWlibm SUNWlibms SUNWsprot \ SUNWsprox SUNWtoo SUNWi1of SUNWi1cs SUNWi15cs SUNWxwfnt system SUNWarc Lint Libraries (usr) system SUNWbtool CCS tools bundled with SunOS system SUNWhea SunOS Header Files system SUNWi1of ISO-8859-1 (Latin-1) Optional Fonts system SUNWlibm Math & Microtasking Library Headers & Lint Files (Usr) system SUNWlibms Math & Microtasking Libraries (Usr) system SUNWsprot Solaris Bundled tools system SUNWtoo Programming Tools system SUNWxwfnt X Window System platform required fonts エラー: "SUNWsprox" エラー: "SUNWsprox" に関する情報が見つかりません。 エラー: "SUNWi1cs" に関する情報が見つかりません。 エラー: "SUNWi15cs" に関する情報が見つかりません。 }} SUNWsprox は Solaris10 では要らないとのこと。 他の2つは1枚目のCDからインストール。 #pre{{ bash-3.00# cd /cdrom/cdrom0/Solaris_10/Product/ bash-3.00# pkgadd -d . SUNWi1cs SUNWi15cs }} * インストール開始 [#xb9af657] グループとユーザの作成。 #pre{{ bash-3.00# groupadd oinstall bash-3.00# groupadd dba bash-3.00# useradd -g oinstall -G dba -d /export/home/oracle -m oracle 64 ブロック bash-3.00# passwd -r files oracle 新しいパスワード: 新しいパスワードを再入力してください: passwd: oracle のパスワードが変更されました bash-3.00# id nobody uid=60001(nobody) gid=60001(nobody) bash-3.00# }} カーネルパラメータの設定と確認。 #pre{{ bash-3.00# prctl -n project.max-shm-memory -i project user.root project: 1: user.root NAME PRIVILEGE VALUE FLAG ACTION RECIPIENT project.max-shm-memory privileged 479MB - deny - system 16.0EB max deny - bash-3.00# prctl -n project.max-sem-ids -i project user.root project: 1: user.root NAME PRIVILEGE VALUE FLAG ACTION RECIPIENT project.max-sem-ids privileged 128 - deny - system 16.8M max deny }} max-shm-memoryを4GBに変えておきます。 #pre{{ bash-3.00# prctl -n project.max-shm-memory -v 4gb -r -i project user.root bash-3.00# prctl -n project.max-shm-memory -i project user.root project: 1: user.root NAME PRIVILEGE VALUE FLAG ACTION RECIPIENT project.max-shm-memory privileged 4.00GB - deny - system 16.0EB max deny }} #pre{{ bash-3.00# mkdir -p /opt/app/oracle bash-3.00# mkdir -p /opt/oradata bash-3.00# chown -R oracle:oinstall /opt/app/oracle bash-3.00# chown -R oracle:oinstall /opt/oradata bash-3.00# chmod -R 775 /opt/app/oracle bash-3.00# chmod -R 775 /opt/oradata }} 一度rootをログアウトして、X から oracle で入り直します。 oracleユーザでインストーラを起動。 #pre{{ bash-3.00$ ./runInstaller Oracle Universal Installerを起動中です... インストーラ要件の確認中... オペレーティング・システムのバージョンを確認中: 必須5.8, 5.9 or 5.10. 実際5.10 問題なし 一時領域の確認中: 250 MBを超えている必要があります. 実際3135 MB 問題なし スワップ領域の確認中: 500 MBを超えている必要があります. 実際3505 MB 問題な し モニターの確認中: 少なくとも256色表示するよう設定されている必要があります. 実際16777216 問題なし すべてのインストーラ要件を満たしています。 Oracle Universal Installerの起動を準備中 (以下略) }} noexec_user_stack=1 が設定されていないと怒られましたが、 そのまま続行してしまいました。 インストールのときは特に気にしなくていいようですが、 再起動したときに有効になるように一応設定しておきます。 #pre{{ bash-3.00# cp -p /etc/system /etc/system.org bash-3.00# echo set noexec_user_stack=1 >> /etc/system }} あとは Linux と同じようにできます。 環境変数の設定を追加しておきましょう。 #pre{{ bash-3.00$ id uid=100(oracle) gid=100(oinstall) bash-3.00$ cat .profile # This is the default standard profile provided to a user. # They are expected to edit it to meet their own needs. MAIL=/usr/mail/${LOGNAME:?} CC=/opt/SUNWspro/bin/cc CXX=/opt/SUNWspro/bin/CC F77=/opt/SUNWspro/bin/f77 ORACLE_BASE=/opt/app/oracle ORACLE_HOME=$ORACLE_BASE/product/10.2.0/Db_1 LD_LIBRARY_PATH=$ORACLE_HOME/lib PATH=/opt/SUNWspro/bin:$ORACLE_HOME/bin:$PATH export CC export CXX export F77 export ORACLE_BASE export ORACLE_HOME export LD_LIBRARY_PATH export PATH bash-3.00$ }} インスタンスを作ったら、ORACLE_SID も書いておきます。 #pre{{ ORACLE_SID=orcl export ORACLE_SID }} * カーネルパラメータの設定について [#t07ee0cc] prctl で設定したものは一時的なものらしく、 再起動すると消えてしまいます。 恒久的には project に登録する必要があります。 上での設定に加えて、max-shm-ids も増やしてみました。 #pre{{ bash-3.00# projmod -K "project.max-sem-ids=(priv,256,deny)" user.root bash-3.00# projmod -a -K "project.max-shm-memory=(priv,4gb,deny)" user.root bash-3.00# projects -l system projid : 0 comment: "" users : (none) groups : (none) attribs: user.root projid : 1 comment: "" users : (none) groups : (none) attribs: project.max-sem-ids=(priv,256,deny) project.max-shm-memory=(priv,4294967296,deny) noproject projid : 2 comment: "" users : (none) groups : (none) attribs: default projid : 3 comment: "" users : (none) groups : (none) attribs: group.staff projid : 10 comment: "" users : (none) groups : (none) attribs: }} ここで書き込んだ設定は /etc/project に保存されます。 (memo) user.root ではダメみたいです。default に設定したほうが良さそうです。 ---- #comment