気まぐれオラクル備忘録
Posted: September 4, 2014
である。
このブログで技術的なネタは正直ほとんど書いてこなかったので
そろそろ技術ネタというか、自己研鑽的に気まぐれに綴っていこうと思う。
正直、かなり初歩の初歩である。
今回の備忘録のタイトルは
「OEMからデータベース起動しようとしたら上手くいかなかったでござる」
はてさて、はじめていこう。
OEMからデータベースを起動しようとすると、以下の情報が求められる
- ホストOSのユーザ名とパスワード
- データベースの管理ユーザの名前とパスワード
これらを入力しokしたら以下のエラーが出た
RemoteOperationException: ERROR: NMO not setuid-root (Unix-only)
ぐぐってみると、どうやらソフトウェアをインストールした際に、インストール後半に実行するroot.shが正常に実行されていなかったか何かでNMOファイル所有者がrootになっていないのが原因みたい。
解決の流れ
1:root.shを再実行
2:nmoの所有者がrootに変更されたことを確認
3:OEMから起動
とまあ解決できた。ついでに、root.shってそもそも何するやつだっけと思い調べてみた。
■root.shの役割
・oratabファイルの作成
・oraenv,coraenvのコピー
■oraenvについて
複数のバージョンのデータベース、複数のインスタンス、複数のoracle_homeなどが同じホストに存在する場合に、環境変数の切り替えを行う際に使用する
■oraenvとcoraenvの違い
oraenv : Bourne、BashまたはKornシェルの場合に使用
coraenv : Cシェルの場合に使用
■oratabファイル
oratabファイルにはデータベースごとに、Oracleソフトウェアを格納するディレクトリ、dbstartとdbshutスクリプトによる起動と停止の対象にするかどうかを指定する。
oratabファイルの中の記述
<ORACLE_SID>:<ORACLE_HOME>:[Y/N]
引用元
http://docs.oracle.com/cd/E16338_01/server.112/b56317/admin_ora.htm
という感じで、書生はOEMからデータベースを起動する際の
ちょっとしたトラブルシュート能力を身につけたのであった。
つづく(のだろうか。。。)