今回は、Oracle8i EnterpriseEdition R8.1.5(OTN版) を RedHat 6.2J にインストールしてみました。 レッドハット株式会社の発表では、 日本オラクル社が、Oracle8iの対応OSに加えたという事なので、遠慮なく使うことができるようになります(^_^;) 好みで言えば、VineLinuxも加えてほしいのですが、難しいでしょうね(^_^;)残念です。 しかし・・・、Windows版は、Oracle8からGUIツールにJavaを利用しはじめた事が、あまり好きではなかった のですが、Linuxでもここまでやるんですね・・・・しかも基本的にはXが必須になってしまったし・・(T_T) とりあえず、インストール記録を残す事にします。 ※OTN版を利用するので、事前にCD-Rに焼きつけています。その際、焼く時のディレクトリ構成がズレてしまったのですが、 それは気にしない事にします( (( ((ヽ(;^^)/ |
OS | Official RedHat Linux 6.2 日本語版 (FTP版) |
---|---|
CPU | Intel PentiumII 300MHz |
MEMORY | 192MB(EDO 32MBx6) |
SCSI | IBM DCAS-34330 (4GB) |
まず、インストール前に確認すべきこととして、CDにあるindex.htm を流すだけでも読んでみると、
インストールにあたっての必要要件がわかります。 ※OTN版は英語でして、自分は英語がほとんど読めないのでかなりの流し読みです(^_^;;; その中で、jre(Java Runtime Environment) が必要だと書かれてるので、別途用意します。 JRE 1.1.6 v5 を http://www.blackdown.orgから取ってきてイン ストールしろと書かれています。 他にも、Linuxカーネルのパラメーターを変更、とりあえず今回、これは無視しましょう( (( ((ヽ(;^^)/ |
Java Runtime Environment の準備 | |||||||||
---|---|---|---|---|---|---|---|---|---|
root で作業します。※ほんとは必要なとこだけ root で作業するほうが好ましいです。はい(^_^;) ftp://ftp.lab.kdd.co.jp/Linux/java-linux/JDK-1.1.6/i386/glibc/v5/ より、jre 1.1.6 v5 を持ってきます。
それを、/usr/local/ にコピーします。
bz2なファイルは、bzip2で展開することができます。で、即展開。
展開後、bz2なファイルがtarファイルになりました。 で、今度は、tarで展開すると、やっとすべてのファイルが出てきます。
展開後、jre116_v5 というディレクトリが作成されていて、その下に jre のファイルがあります。 それを /usr/local/jre というシンボリックリンクで利用できるようにします。 こうしておくと、他バージョンの jre を持ってきたときに、リンクの張り替えで各バージョンのファイルはそのままで使い分けることができます。
あとは、念のため、ls で確認しておきましょう。
Oracleのインストーラーは、gmake を利用するようです。といってのその正体は普通の make です。 確認してみましょう。
ちゃんとありますね。 もしなければ、次のようにしてシンボリックリンクを作成してください。
また、TCL7.5 以上が必要との事です。 大抵初めから入ってるので、rpm の方で確認してみます。 tcl-8.0.5 が入ってます。7.5 以上なので多分大丈夫でしょう(^_^;)
あと、OracleのGUIインストーラーは、なかなかメモリ食いらしいので、192MBでも心細い為、スワップで増強してみます。 この方法だと、あとで楽に切り捨てられるので楽だそうです。(あるMLで仕入れた情報(^_^;;;;) dd でファイルをつくって、mkswap でスワップ領域として使えるようにフォーマット(かな?)します。 swapon でスワップとして有効にしてしまえばOKです。 現在、メインメモリ192MB、スワップが128MBなので、あと128MB追加してみました。
|
Oracleユーザーの準備 | ||
---|---|---|
root で作業します。 Oracle製品をインストールしたりする管理者グループとして、oinstall を作ります。 あと、データベースを管理するグループとして、dba を作ります。 状況に応じて、-g オプションで、gid を指定してください。
次は、Oracleのプロセスが関るユーザーを作成します。 -g オプションで、oinstall グループに所属する事を指定し、 -G オプションで、dba グループにも所属させる事にします。 状況に応じて、-u オプションで、uid を指定してください。 Oracleのプロセスは、このユーザーのプロセスとして起動し、権限はすべてそのユーザーに依存します。 デーモンのftpdとユーザーのftpなどと同じ関係ですね。 で、もちろん、パスワードも変更します。 ※ora8i というユーザー名は勝手に付けたものです。普通は oracle とか ora815 とかかな。
次は、さっそく、作成したユーザー ora8i で作業します。 Oracleのインストーラーは、JavaなGUIになっているため、Xが起動しなくてはいけません。 多少狭くても、VGAで十分なのであまりこだわらなくてもいいかもしれません。でも、ちょっとなぁ・・(^_^;) 一応、VGAの16色で簡単に設定したXを利用する事にします。 で、画面のコピーが欲しかったので、VNCをさらに利用してます(^_^;) では、startx しますぅ〜 ※GNOME や KDE は、なんか好きじゃないのでインストールしなかったら、Fvwm が残ってました(^_^;) ※GNOME だとうまくインストーラーが動かないという情報もあります。どっちかっていうと KDE が無難みたいですね。 どういう風にうまく動かないのかわからないので今度調べてみる事にします。 ※環境変数 LANG 次第で、インストーラーの一部で文字化けが発生します。 その場合は、回避策は、LANG=C としましょう。 でも、自分は、LANG=ja_JP.eucJP のままでインストールしました( (( ((ヽ(;^^)/ export LANG=C |
JavaなGUIインストーラーによるインストール作業 | ||
---|---|---|
1. | とりあえず、ora8i の home を確認してみます。 最初はOracle用の環境変数の設定が必要なので、目的は、.bash_profile です。 ※.bash_profile ではなく、.bashrc を利用する方法もあります。
|
|
2. | vi 等を利用して、Oracleのインストールや稼働動作に必要な環境変数を書き込みます。 [ora8i@sky ora8i]$ vi .bash_profile ORACLE_BASE は、どこにインストールするかを考えて設定しましょう。 自分は安易に、ユーザーora8i のホームでいいや。と決めました(^_^;) ORACLE_SID ですが、今回は妥当なorclで作りたいと思います。 |
|
3. |
|
|
4. | root で、OracleのCDをマウントします。 マウント後(もちろん先でもいいです(^_^;))、一応、動作環境を満たしているか確認します。 df でディスクの使用容量を見ることができます。約4GB中17%しか使ってません。 free でメモリ・スワップの状況を見ることができます。メモリ192MB、スワップ256MBあります。 cat /proc/swaps でスワップ領域の一覧を確認できます。ちゃんと増強した分が入ってます。 ※free ですが、RedHatLinuxや、VineLinuxでは、/usr/bin/ の下にあるコマンドなんですが、 一部のTurboLinux(6.1Serverと6.0WSだけ?)では、/bin/ の下にあるため、dbassist が起動しない事があるそうです。 その場合は、ln -s /bin/free /usr/bin/ として、リンクで誤魔化せば回避できるそうです。 |
|
5. | そういえば、環境変数をまだ.bash_profile に書き込んだだけで現在のセッションに反映させていませんでした。 source .bash_profile で、反映する事ができます。 その後、env で環境変数を確認してみましょう。 これで、インストーラーを起動する準備ができました。 |
|
6. | すでにマウントしているので、cd mnt/cdrom/ とすればカレントディレクトリが変わります。 が、このCDはちょっと焼くときに失敗してしまってるので、 さらにcd Oracle8i/ とします(T_T) 焼き直すのはもう面倒なのでこのまま使いつづけます( (( ((ヽ(;^^)/ ls -aF で確認してみます。 runInstaller がインストーラーです。 ./runInstaller として実行します。 Error in CreateOUIProcess(): -1 でエラーです(T_T)起動しません。 |
|
7. | そういえばと、OTNに、RedHat6.1へのインストール資料が確かありました。 http://technet.oracle.com/tech/linux/ http://technet.oracle.com/tech/linux/htdocs/install.pdf これです。この資料には、更に下のinstall/linux/runIns.sh を使えと書かれています。 では、さっそく、cd install/linux/ とし、ls -aF で確認すると目的のファイルがあります。 では、./runIns.sh として実行〜。 |
|
8. | めでたく起動しました(^_^;) しかし起動するだけでも、時間がかかるし、CPU占有率が・・右下の方で確認できます(^_^;) で、すでにインストール済みのものなんてないし、とにかく次へいきましょう。(^_^;) |
|
9. | ソースの方はそのままデフォルトでOKとして、インストール先を確認します。 ORACLE_HOME/app がデフォルトになっています。変更なしで次へ。 |
|
10. | 製品リストのロード中... |
|
11. | UNIXグループ名は、事前に管理用として作成している dba とします。 |
|
12. | root で、/tmp/orainstall/orainstRoot.sh を実行してから、再試行ボタンを押してインストールを継続すれば良いようです。 |
|
13. | 事前に、root で処理をしていた kterm の方で、実行してみます。 すると、 [root@sky /root]# /tmp/orainstall/orainstRoot.sh Oracle?????????????????????????(/etc/oraInst.loc) ???????????????/home/ora8i/oraInventory ?? dba. となりました。文字が化けてます。 LANG=C の場合は、次のように表示されます。 [root@sky /root]# /tmp/orainstall/orainstRoot.sh Creating Oracle Inventory pointer file (/etc/oraInst.loc) Changing groupname of /home/ora8i/oraInventory to dba. そして、元の方で、再試行ボタンを押して次に進みます。 |
|
14. | インストールする製品を選択できます。 ここでは、もちろん目的は、Oracle8i Enterprise Edition 8.1.5.0.0 です。 |
|
15. | インストールの種類を選択できます。 注意する点は、OTN版なので、基本的にUS仕様になっています。 ですので、Custom を選択し、日本語でも利用できるようにしましょう。 ※日本販売用は一度利用したことがあるのですが、この確認はしていません。 |
|
16. | Custom ということで、使用可能な製品コンポーネントを選択できるようになります。 Oracle interMedia 8.1.5.0.0 は選択するとインストール作業になんらかの問題が発生するという話もありますし、もともと使う気もないので省きます。 あと、JDBC、SQLJ、Universal Installerを省き、あとはほとんど選択しました。 そして、次に行く前に、製品の言語を設定します。 |
|
17. | 言語の選択 英語のみしか選択されていない為、日本語を追加します。 |
|
18. | 戻ってきて、次へ進むと、なにやら準備を始めたようです。 |
|
19. | Create Databse 初期データベースとして作成するかどうかですが、別に今は作る気がないので、Noを選択。 そして次へ。 |
|
20. | Oracle Protocol Support なにも一覧にでてきません(^_^;) せめてTCP/IPぐらい出てきてほしいんですけど・・・・ いろいろ調べてみたら、現在はこういうものらしい(^_^;)とりあえず次へ。 |
|
21. | サマリー とりあえず、インストール概要がまとめられて表示され・・・・ 必要な領域 ボリューム / 必須 457MB : 使用可能 使用できません。 (^_^;)なんだそれは。使用可能なのか。使用できないのか。どっちだ(^_^;) 約4GB中17%しか使ってないディスクなのに、なんなんだ一体(^_^;) とりあえず、強行して次へ(^_^;) |
|
22. | ディスクに十分な領域がないため、インストールに失敗するおそれがあります。続行しますか? って・・・・これは残容量の算出がおかしい・・・ とりあえず、十分な容量はあるので、強行的に続行します(^_^;) |
|
23. | インベントリ/home/ora8i/oraInventoryに書き込むための十分な容量がない可能性があります。続行しますか? いや、だから十分に有るってば(^_^;)。つ〜ことで、強制的に続行(^_^;) |
|
24. | インストール やっとファイルのコピーが始まりました(^_^;)ここでしばし待ちます。 |
|
25. | ファイルコピーも10分程度で終わり・・・ 次に進む前に、別のウィンドウからルートとしてログインし、/home/ora8i/app/root.shにあるroot.shを実行してください。 との事。 |
|
26. | とりあえず、root 処理用にキープしている kterm で処理することにします。 ところが、/home/ora8i/app/root.shにあるroot.sh って・・・ないじゃん(^_^;) これって、/home/ora8i/app/にあるroot.sh なのね(^_^;) で、実行してみます。 [root@sky app]# ./root.sh bash: ./root.sh: 許可がありません が〜ん。実行できないではないか・・・・とりあえず確認。 [root@sky app]# ls -al root.sh -rw-r--r-- 1 ora8i oinstall 5181 Jul 1 21:54 root.sh とりあえず実行できるようにビットを立てます。 [root@sky app]# chmod +x root.sh [root@sky app]# ls -al root.sh -rwxr-xr-x 1 ora8i oinstall 5181 Jul 1 21:54 root.sh [root@sky app]# ./root.sh Running Oracle8 root.sh script... やっと実行できました(^_^;) Enter the full pathname of the local bin directory: [/usr/bin]: と、localなbinはどこ?って聞かれたので、素直に、/usr/local/bin と答えます。 すると、/etc/oratab の作成とかいろいろやってくれてるようです。 |
|
27. | ファイルコピー、まだ終わってなかったようです(^_^;) でも、数分でそれも終わり・・・・ |
|
28. | Oracle Database Configuretion Assistant JNLS例外:oracle.ntpg.jnls.KNLSException 各国文字キャラクタ・セットを見つけることができません。Oracleインストレーションを確認して下さい。 だ、そうです(^_^;) で、先のpdf資料に、この警告は無視しなさいと書かれていますので、無視します。 でも・・・Create Database はしない って答えたはずなんだけどなぁ・・・(^_^;) |
|
29. | Oracle Database Configuretion Assistant 今、作るつもりはなかったんだけど、起動してしまいました(^_^;) まぁ、雛形にするスクリプト程度を作ることにしますか。 |
|
30. | Oracle Database Configuretion Assistant もちろん、データベースの作成 をします。 |
|
31. | Oracle Database Configuretion Assistant Oracle8 for Linux の時に、DBのキャラクタ・セット(言語コード)の変更はカスタムでないと出来ないとかいう問題があったので、今回も念のためカスタムで行きます。 それに、各パラメーターのデフォルトの値も見ておきたいし(^_^;) |
|
32. | Oracle Database Configuretion Assistant データベースの稼働環境ですが、目的にあったものを選ぶと各パラメーターのデフォルト値がそれなりに変化するみたいですね。 だけど、目的は実験程度なのでハイブリッドで行きます。 |
|
33. | Oracle Database Configuretion Assistant 同時接続ユーザー数ですが、これはライセンス次第ですね。 |
|
34. | Oracle Database Configuretion Assistant データベースのデフォルトの稼働モード。これはリスナーの稼働モードですね。 共有サーバー(マルチスレッド)はとりあえず置いておいて基本として専用サーバーで(^_^;) 必要があればあとで変更します。 |
|
35. | Oracle Database Configuretion Assistant 使用するカートリッジとオプション InterMedia は、使わないしインストールもしてないので外します。 JServer って・・、・R8.1.5 ではまだ正式サポートでもないし、Javaはあまり好きでもないので外します(^_^;) |
|
36. | Oracle Database Configuretion Assistant グローバル・データベースネームや、SID、初期化ファイル、互換パラメータ、キャラクタ・セットの 変更ができます。互換パラメータは必要に応じて8.0.5に合わせる事もできます。 次に行く前に目的のキャラクタ・セットを変更します。 |
|
37. | Oracle Database Configuretion Assistant データベース・キャラクタ・セット 基本となるキャラクタ・セットですが、今回はJA16EUC でいきます。 あと、NVARCHAR2等の各国文字仕様のデータ型を利用する場合に関係してくる各国文字キャラクタ・セットをそれなりのものへ変更します。JA16EUCFIXED にします。 状況次第では、SJIS(JA16SJIS、JA16SJISFIXED)とかを利用した方が良いケースもありますので、よく考えて設定しましょう。 データベース作成後は、変更できません。変更するならば、再作成になります。 |
|
38. | Oracle Database Configuretion Assistant 制御ファイル、最大データファイル数、最大ログファイル数、最大ログメンバー数を変更できます。 が、あとでスクリプトをカスタマイズする予定なのでこの辺からあとはほとんどデフォルトでほっときます。 |
|
39. | Oracle Database Configuretion Assistant 各領域や、それに対応する各データファイル等が変更できます。 |
|
40. | Oracle Database Configuretion Assistant REDOログファイルとファイルサイズを変更できます。 |
|
41. | Oracle Database Configuretion Assistant ログのチェックポイントや、アーカイブ・ログの設定ができます。 |
|
42. | Oracle Database Configuretion Assistant SGAパラメータの設定ができます。 共有プールサイズ、ブロックバッファ数、ログバッファサイズ、プロセス数、ブロックサイズ |
|
43. | Oracle Database Configuretion Assistant トレース関係のログの出力先を変更できます。 ユーザープロセスのログ、バックグラウンドプロセスのログ、コアダンプ |
|
44. | Oracle Database Configuretion Assistant で、今作る気は毛頭無いので、シェル・スクリプトにして保存しておきましょう。 あとで、好きなように書き換えて実行してしまえば良いだけです。 |
|
45. | Oracle Database Configuretion Assistant 保存先ですが、まだ、そのままでいいか。 |
|
46. | Oracle Database Configuretion Assistant /home/ora8i/app/install/ に、sqlorcl.sh というファイルで保存されます。 |
|
47. | Oracle Database Configuretion Assistant 保存されました(^_^;)。 |
|
48. | Oracle Database Configuretion Assistant インストールの終了 やっと終わりました。インストール(^_^;) 別の製品もないので終了です。 |
|
49. | Oracle Database Configuretion Assistant 終了確認です。はいと答えます。 |
|
50. | Oracle Database Configuretion Assistant は終了しました。 とりあえず、作られたファイル等を確認してみましょう。 |
|
51. | admin、app、oraInventory、oradata の4つのディレクトリが増えています。 スクリプトを見ると、oradata にデータベースのファイルを置くようだったので、そこを見てみます。 orcl というディレクトリがありますね。SID でディレクトリ名を決めてるのでしょう。 となると、スクリプトを流すと、この下にデータベースが作られるって事ですね。 次に示す パッチ が、あるのならば、作成は、パッチを当ててからのほうが良いかもしれません。 以上で、インストールは終了です。X はもう必要ないので落とします。もちろん落とさず作業を続けてもOKです。 |
|
linux.sh | |
---|---|
資料によるとリスナー関連のパーミッションとかいろいろ修正するスクリプトみたいです。 ./linux.sh 流してみるとちょっと warning 出てるとこがありますが、error じゃないので楽観しておきます(^_^;)
|
|
Oracle 8.1.5.0.2 Patch set | |||
---|---|---|---|
OTN版 は一緒にパッチもあるので、さっそくあててみます。 ファイルは、linux_815patches.tgz です。8.1.5.0.0 と 8.1.5.0.1 を 8.1.5.0.2 にするパッチだそうです。 修正内容は、http://technet.oracle.com/support/tech/linux/files/readme.txt にあります。 tar zxvf linux_815patches.tgz として展開します。 すると、linux_815patches というディレクトリができ、その下にある linux_815patches.sh を実行します。 cd linux_815patches ./linux_815patches.sh
これで、パッチをあてました。さっそく、svrmgrl で確認してみましょう。 Oracle8i Enterprise Edition Release 8.1.5.0.2 - Production となっていれば、OKです。
|
|||
データベース作成 | |
---|---|
さて、次は、データベース作成です。 もし、dbassist で作成した、スクリプト を利用する場合は、sqlSID.sh を実行するだけです。 もちろん、スクリプトを好きに書き換えた上で、実行してもOKです。もし間違いがあった場合の為に作成されるログは目を通しましょう。
作成後は、リスナー設定や、データベースの自動起動です。 |
データベースの起動と停止のスクリプトを用意しよう | |||||||
---|---|---|---|---|---|---|---|
あらかじめ、用意されているスクリプトで起動と停止ができるようにします。
/etc/oratab には、ORACLE_SID、ORACLE_HOME、対象とするかのY/N を記述します。
コメント部分にも説明がありますので、それほど凝った記述ではないです。 で、これで、dbstart、dbshut の対象に、ORACLE_SID=orcl が加わりました。 起動は別にいいのですが、終了の shutdown コマンドには、いくつか種類が有ります。 dbshut の中身を確認すると、どうやら shutdowm normal(normalは省略可) のようです。 これですと、ユーザーが 接続している限り 絶対に shutdown できません。 せめて、immediate に変えましょう。でないといざという時に困ることになりかねません。 ということで変更します。
上記の部分を下記のように変更します。 shutdown 自体は、4ヶ所ほどあるので、全部書き換えた方が良いかも。 最低でも、svrmgrl(2ヶ所)、sqlplus(1ヶ所) を利用してる部分だけでも書き換えたほうが良いでしょう。
さっそく試してみましょう。すでに起動しているので、dbshut からですね。
きちんと終了しました。 では、次は、dbstart です。
こちらも無事に、起動しました。問題ないですね。 ここで、下記のように、SGA が 32バイト とか表示された場合、 OTN版 の場合は、まだパッチを当てていない状態です。 製品版 の場合は、Patch-CD に、修整ファイルが入ってますので、リリースノート あたりを参照して、入れ換えましょう。
|
リスナーの設定をしよう | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
データベースは問題なく作成できたわけですから、次は、他のクライアントからも利用できるように、リスナー を設定して起動させましょう。 リスナーの定義ファイル は、$ORACLE_HOME/network/admin/listener.ora です。 が、存在しないので、サンプルとして用意されている $ORACLE_HOME/network/admin/samples/listener.ora をコピーして利用します。
さっそく設定してみましょう。 LISTENER に、リスナーとしての設定(プロトコル等)を記述します。
SID_LIST_LISTENER に、リスナーが受け付けるインスタンス等の詳細を設定します。
GLOBAL_DBNAME をここで記述しておくと、クライアントの設定が楽になったりもします。 GLOBAL_DBNAME = db_name.db_domain となります。
設定ファイルの記述が終われば、次は、リスナーの起動です。 リスナーの起動、及び停止は、lsnrctl で実行します。
正常に実行できました。 もし、ここで下記のようなエラーになる場合、共有ライブラリがロード出来無い。オープンできなかったというエラーなので、まずは、 環境変数 LD_LIBRARY_PATH が設定されているか確認して下さい。 もし問題なければ、今度はその LD_LIBRARY_PATH が示す場所に、メッセージの lib_filename のところに記述されるファイル名を 探してください。ファイルが存在しない場合、インストールに失敗している事になります。 なかには、別のOracleからファイルをコピーしてきた人もいるそうです(^_^;)他にも解決策はあるようですが、自分はそういう事に遭遇した事がまだ ありませんので、よくわかりません(^_^;)
ついでにプロセスも確認してみましょう。
次は、停止をしてみます。
無事停止もできました。 次は、もう一度起動して、クライアントからネットワーク経由でリスナーの確認をしてみましょう。 クライアントとして、Windows2000 + Oracle8.0.6(OTN版) を利用します。 もちろん、接続できる Net8 ならば、どのバージョンでもかまいません。 リスナーの確認用として、tnsping80 がありますので、それを利用します。 接続先は、先にリスナーで指定した GLOBAL_DBNAME を利用します。
リスナーが存在(起動)している事がわかりました。 次は、SQL Plus で実際に接続してなにか SQL を実行してみましょう。
もし、接続に失敗し、下記エラーメッセージが出る場合は、 GLOBAL_DBNAME = db_name.db_domain を確認してください。。
これでクライアントからも問題なく利用できるようになりました。 次は、OS起動時 に、自動的に起動するようにしたいと思います。 RedHat系 では、この手のスクリプトは、/etc/rc.d/init.d/ に置き、あとは ランレベル に応じて、起動や停止の用の シンボリックリンク を置くようです。 ここでは、スクリプト名 と、/var/lock/subsys/ に置くロックファイル名を決めなくてはいけません。 この二つは同じ名前にする方が好ましいです。 同じにすると、OSの起動時と終了時、同じくリブート時に、画面に起動中、または停止中として、表示されるようになります。 今回は、$ORACLE_USER をそのまま利用することにします。 ここでは、OS に関連する事なので、root になって、作業しました。 機能としては、
次は、作成したスクリプトが実行できるように、実行属性 を与えます。
実行できる状態になったら、実行してみましょう。 すでに起動している状態ですので、まずは、stop、そして start を試します。また残りも試しましょう。
無事問題なく、確認できました。 次は、ランレベルを考慮して、自動起動、自動停止をできるようにします。 念のため、今から作成するリンクが存在していないか調べてます。って普通は存在してないですよね(^_^;) 起動に関しては、ランレベル3 だけでも良いかと思いますが、中には、GUI な起動をしているかもしれません。その場合は、ランレベル5 も考慮します。 起動を示す頭文字 S の次の番号が、起動順になりますので、ネットワークとか他のデーモンが起動した後の方が確実です。 よってかなり後半の数字を利用します。今回は 70 にしました。 数字の後ろの名前は、元のスクリプト名と同じにしたほうがどのリンクかすぐ判断できますので、リンク名は、S70ora8i に決めました。 では、作成しましょう。
次は、自動停止のリンクを作成します。 停止は、念のため、全ランレベル(0〜6) に作成したりします(^_^;) なにがあっても停止させたいですし。 停止を示す頭文字は、K です。順番もなによりも停止させたいので、早めの番号にします。 今回は、25 に決めました。
作成できれば、一通り確認してみます。
では、きちんと自動停止、自動起動するかリブートしてみましょう。
シャットダウン時には、上記のように表示され、起動時には、下記のように表示されます。
これで、すべて終了しました。(^_^;)ほっと一息。 と思っていたら、swapfileの後片づけしてません(^_^;) そのまま利用したい場合は、起動毎に有効になるようにしないといけないので、rc.local にでも、swapon を書いてください。 自分はいらないので削除します。
これでほんとに終わりでしょう(^_^;)きっと。 しかし、流して作成しただけなので、実際の運用に使えるデータベースではありません。 用途やそのときどきのハードに合わせた設定等をしないといけないでしょう。 これは、あくまで勉強の一環です。 |
おまけ | |
---|---|
複数インスタンスを扱う場合、/etc/oratab に対象インスタンスをすべて羅列すれば良いです。 ためしに、$ORACLE_SID=test を作成しました。 これできちんと、dbstart、dbshut できる事が確認できます。
|