前回のつづきです。 前回は、SPFILEの記述のないinit[SID].oraファイルを %ORACLE_HOME%\database\配下に配置しても、 勝手にSPFILEの記述を追記される。 それも、SQL*PlusのSTARTUPコマンドじゃなくて、 srvctlコマンドで起動してみた場合に起きている。 # line added by Agentというメッセージを残して。。 そう、Oracle Grid Infrastructure(以下Grid)がなんかやっそうだ。
さて、本題。 Gridでcrsに関係するagentと言えば、oraagentかorarootagentですよね でもあってOracleなので、なんかやってるとすればoraagentが怪しい。 ということで、「init[SID名]」でログを検索します。 %GRID_HOME%\log\strike-1\agent\crsd\oraagent\配下の\oraagent.XXXを検索 やっぱりなんか出てる。 2012-12-19 20:05:13.130: [ora.strike01.db][4876] {1:28408:2364} [start] sModifyConfig for strike01 2012-12-19 20:05:13.145: [ora.strike01.db][4876] {1:28408:2364} [start] ConfigFile::update file D:\app\orauser\product\11.2.0\dbhome_1\database\initstrike011.ora is updated sModifyConfigっての実行した後に、initstrike011.oraを更新したと。 しれっとやっとる。。 sModifyconfigというキーワードと、 srvctlの実行によって出力されているということから srvctl configやmodify辺りが怪しい!!(強引ですが) と言うことで、configを確認します。 C:\>srvctl config database -d strike01 -a ==== 一意のデータベース名: strike01 データベース名: strike01 Oracleホーム: D:\app\orauser\product\11.2.0\dbhome_1 Oracleユーザー: nt authority\system spfile: +DATA/strike01/spfilestrike01.ora ドメイン: 開始オプション: open 停止オプション: immediate データベース・ロール: PRIMARY 管理ポリシー: AUTOMATIC サーバー・プール: strike01 データベース・インスタンス: strike011,strike012 ディスク・グループ: DATA マウント・ポイントのパス: サービス: タイプ: RAC データベースは有効です データベースは管理者によって管理されています ==== SPFILE、定義されてます。 そもそもSRVCTLって??? OracleR Real Application Clusters管理およびデプロイメント・ガイド11g リリース2 (11.2)より ==== SRVCTLを使用してクラスタの構成操作を実行すると、 SRVCTLは構成データをOracle Cluster Registry(OCR)に格納します。 SRVCTLは、Oracle Clusterwareリソース(Oracle Call Interface APIを使用して データベースの起動および停止操作を実行するエージェントを定義)を構成および管理することによって、 インスタンスの起動および停止のようなその他の操作を実行します。 ==== どうやら定義はOCRに入ってるようです。 いつ、定義したんだろう。。。 と、よくよくDB作成スクリプト([Database名].sql)を確認してみると host D:\app\orauser\product\11.2.0\dbhome_1\bin\srvctl.bat add database -d strike01 -o D:\app\orauser\product\11.2.0\dbhome_1 -p +DATA/strike01/spfilestrike01.ora -n strike01 -a DATA srvctlコマンドを使用したデータベースリソース追加時のオプションで、 -p +DATA/strike01/spfilestrike01.oraというのを指定して実行しています。 OracleR Real Application Clusters管理およびデプロイメント・ガイド11g リリース2 (11.2)より -p spfile データベース・サーバー・パラメータ・ファイルのパス名 なるほど。
だんだん見えてきました。
次回は、srvctlコマンドを実行してOCR内のSPFILE情報を書き換え、 推測が正しいかを確認します。
0 件のコメント:
コメントを投稿