• ベストアンサー

Oracleの起動時に、マウントしたりしなかったりで困っています。

初めまして。Oracleの知識が薄く困っております。 よろしくお願い致します。 さて、現象ですがPC起動と同時にOracleが起動するように設定しているのですが、 マウントまで行ったり行かなかったりで困っております。 (起動する度に現象が異なります) Ver:ORACLE V10.1.0.2.0 OS :WindosXP SP2 アラートログを確認しますと、 XXXX started with pid=Y(XXXX=SMONだったりRECOだったり・・・) の直後に、 alter database mount exclusive のコマンドが続く場合は、うまく立ち上がるようです。 しかし、 XXXX started with pid=Y の後に何もない時はマウントできていないようです。 また、 (1) > sqlplus /nolog (2) SQL> connect sys/aaaa@bbbb as sysdba (3) SQL> select status from v$instance; とすると、「STARTED」状態であり、 SQL> alter database mount; SQL> alter database open; とすると、正常に動作するようになります。 oradim.logを確認すると、  ORA-01012: not logged on  ORA-24324: service handle not initialized が出ていますが、どこから調査をすればいいのか暗闇の中です。 お助言頂きますようお願い致します。

  • Oracle
  • 回答数2
  • ありがとう数4

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

なんとなく、ORACLE_SIDの環境変数の設定あたりが怪しそうな 気がしますが・・・ 障害に対する情報ではないのですが、参考として。 Windowsプラットフォームの場合、データベースの起動は バッチ処理で起動するようにします。 サービス起動時にDBインスタンスも起動する設定をしないようにし (1)ORACLE_SID環境変数の設定 (2)サービスの起動(net startコマンド) (3)sqlplusでstartupの実行 (4)listenerの起動(lsnrctlコマンド) を実行するバッチをグループポリシーのスタートアップスクリプト などに登録します。 バッチの結果をリダイレクトしておけば、エラーになったときも 確認取れますし。 終了もサービスに頼らずにシャットダウンするバッチを作成し グループポリシーのシャットダウンスクリプトに登録します。

masajun884
質問者

お礼

ご助言ありがとうございます。 バッチ起動の方がいいんでしょうか。 一度実験してみます。 また、シャットダウンもバッチからという点も参考になりました。

その他の回答 (1)

  • ishi7474
  • ベストアンサー率32% (71/216)
回答No.1

状況がよく分かっていないのですが、UNIX系OSではOracleの自動起動と 自動停止の設定手順が酷似しておりますので、自動起動を設定している 人は忘れずに自動停止も設定しています。 ところがWindowsは自動起動の設定手順と自動停止の設定手順が大きく 異なっているので、自動起動の設定だけで自動停止も設定したと思い 込む人が結構います。自動停止を正しく設定したか、確認されては いかがでしょうか。

masajun884
質問者

お礼

ご助言ありがとうございました。 自動停止の件、失念しております。 (というか、しなければいけないと考えておりませんでした) 起動/停止をバッチから試してみようと思います。 停止も重要な点、非常に参考になりました。

関連するQ&A

  • Oracleデータベースの復旧方法

    識者の方々、どうかお教えください。 昨日データメンテナンス中に、保守プログラムがとまってしまいました。 サーバーを再起動して、Oracleをスタートしたところ、データベースに接続できなくなっていました。 色々調べましたが、以下の状態から進むことができません。 恥ずかしながらバックアップはとっていませんでした。 なんとか復旧する手だてはあるのでしょうか? -------------------------------------------- SQL>connect sys/Oracle as SYSDBA アイドル・インスタンスに接続しました。 SQL>startup ORACLEインスタンスが起動しました。 Total System Global Area 1826944268 bytes Fixed Size 70924 bytes Variable Size 49324416 bytes Redo Buffers 77824 bytes データベースがマウントされました。 ORA-01589: データベースをオープンするにはRESETLOGSまたはNORESETLOGSを使用する必要があります SQL> alter database open resetlogs; alter database open resetlogs * 行1でエラーが発生しました。: ORA-01152: ファイル1は十分に古いバックアップからリストアされていません。 ORA-01110: データファイル1: '/opt/oracle/oradata/o10g/system01.dbf' SQL>recover database using backup controlfile until cancel; ORA-00279: 変更 25084677(04/20/2009 12:11:39で生成)にはスレッド1が必要です。 ORA-00289: 検討すべきログライル: D:\ORACLE\ORA81\RDBMS\ARC87062.001 ORA-00280: 変更 258365040(スレッド1)は順序番号 87062に存在します。 ログの指定:[<RET>=suggested | filename | AUTO | CANCEL} auto ORA-00308: ORA-27041: OSD-04002: ファイルをオープンできません。 O/S-Error: (OS 2) 指定されたファイルが見つかりません。 ORA-01547: 警告:RECOVERは成功しましたがOPEN RESETLOGSが次のエラーを受け取りました。 ORA-01194: ファイル1は一貫した状態にするためにさらにリカバリが必要です。 ORA-01110: データ・ファイル1:D:\ORACLE\ORADATA\MYCOMPANY\SYSTEM01.DBF ----------------------------------------------------------

  • OracleのSGA領域の拡張について

    SGA領域の拡張をしておりますがOS上のメモリーの見方が よく分かりません。 SGAを拡張する前は下記のようになっております。 ●MiracleLinux 2.1 [oracle@svr20 dbs]$ free -m total used free shared buffers cached Mem: 1254 1247 7 233 659 190 -/+ buffers/cache: 397 857 Swap: 2000 0 2000 →見方としては free7M + buffers659M + cached190M = 856M  -/+ buffers/cache:とほぼ同じでだいたい856Mあまっている?  と言う見方でよろしいのでしょうか? ●Oracle9.2.0.1 SQL> startup open; ORACLE instance started. Total System Global Area 235999352 bytes Fixed Size 450680 bytes Variable Size 201326592 bytes Database Buffers 33554432 bytes Redo Buffers 667648 bytes Database mounted. Database opened. →SGAは235Mとなっております。 ------------ ここで alter system set sga_max_size = 1024M scope=spfile; 発行して1024Mに拡張しOracleとOSを再起動しました。 SQL> startup open; ORACLE instance started. Total System Global Area 1074861156 bytes Fixed Size 451684 bytes Variable Size 1040187392 bytes Database Buffers 33554432 bytes Redo Buffers 667648 bytes Database mounted. Database opened. →SGAは1Gとなっており増えております。 [root@svr20 /root]# free -m total used free shared buffers cached Mem: 1254 1212 42 236 668 161 -/+ buffers/cache: 382 872 Swap: 2000 73 1926 →872Mあまっている? 75Mぐらい増やしましたがOS上では減っておりません。 freeは42Mと増えてます。 また、alter system set sga_max_size = 2024M scope=spfile; と拡張しましたら再起動後メモリが足らないのかORA-27123となり起動 できなくなりました。 この場合SGAのメモリ枠は何メガまで拡張できるかどのようにして 判断したら良いか教えてください.

  • Oracleが起動しません(ORA-01034)

    環境 ・Windows2000 ・Oracle8i Oracleが突然起動しなくなりました。 SQLPlusで接続しようとすると 「ERROR ORA-01034: Oracle not available」 というメッセージが表示されます。 サービスを見ると OracleServiceORCLが「開始中」のままいつまでたっても開始しません。何度再起動しても状況は同じです。 Oracle初心者ですのでまずはエラーメッセージが出たときの調べ方をご教授願えませんでしょうか。 よろしくお願いします。

  • EM express が起動できません。

    オラクル勉強中の初心者です。 Oracle VM VirtualBox を用いた Oracle Database 12c Release 1 環境の構築 http://www.oracle.com/technetwork/jp/database/enterprise-edition/documentation/index.html 上記のホームページを参考にwindows上にLinuxを構築し、oracle12cをインストールしています。 なぜか、最後の段階の EM express が起動しません。 Firefox上では、 接続がリセットされました と表示されます。 ・リスナーは起動しています。 ・listener.ora、sqlnet.ora、tnsnames.oraも問題はなさそう ・プラガブルデータベースも立ち上がっていますし、alter database open;も問題ないです。 ・ファイアウォールやプロキシも問題はなさそう。 ・リナックス上で検索しても、emctlというファイルが見当たらない emctl start dbconsole をコマンドを打つと、 コマンドが見つかりません と表示されます。 これはEM expressがインストールされてないということなのでしょうか?別途インストールが必要なのでしょうか?(DBCAで、EM expressを構築するにチェックは入れていたと思いますが) また、非常に分かりやすかったので、下記のホームページも参考にしましたが、それでもEM expressが起動しません。 Oracle12c Enterprise Manager 接続できない問題 http://blog.sys-nag.net/?p=329 どなたか分かる方、教えていただければと思います。 よろしくお願いします

  • オラクルユーザのパスワード変更

    お世話になっています。 ALTER USER [ユーザ名] IDENTIFIED BY [パスワード] を使用して、ユーザのパスワードを変更したいのですが、パスワードを数字で始めると ORA-00988:パスワードが指定されていないか、または無効です。 となってしまいます。 例>ALTER USER USER1 IDENTIFIED BY 0ABC→エラー パスワードを英字で始めて、その後に数字をつけるぶんには問題なく変更できるのですが、数字で始めるとエラーになってしまいます。 これはオラクルの仕様なのでしょうか?? それともSQLの組み方がまずいのでしょうか?? それともオラクルの設定が間違ってる?? どなたがわかる方がいらっしゃいましたら、ご教授をお願いします。

  • DBが作成できない(ORA-03113)

    こんにちわ。Oracle9iを導入しようとしています。 インストールまでは上手くいったのですが、DBの 作成の際に同じエラーが多発しDBが作成できません。 誰か良い回避方法を知っていらっしゃる方がいれば 教えてください。お願いします。 ・表示されるエラー Ora-03113: End of file on communication channel ・マシンのスペック CPU:P(3)500 HDD:10.5G ( /:3GB, /u01(オラクル領域):5GB, /tmp:1GB, SWAP:1GB) メモリ:128MB OS:Miracle Linux v2.1 ・Oracle9iの種類 Oracle9i Database for Linux(9.2.0) ・$ORACLE_BASE/admin/yamamoto(SID)/bdump配下のアラートログ(抜粋) 2002 Successful mount of redo thread 1, with mount id 1368550459. Thu Dec 19 16:51:08 2002 Completed: Create controlfile reuse set database yamamoto MAXINST Shutting down instance: further logons disabled Shutting down instance (normal) License high water mark = 3 All dispatchers and shared servers shutdown Thu Dec 19 16:51:14 2002 ALTER DATABASE CLOSE NORMAL ORA-1109 signalled during: ALTER DATABASE CLOSE NORMAL... Thu Dec 19 16:51:14 2002 ALTER DATABASE DISMOUNT Completed: ALTER DATABASE DISMOUNT ARCH: Archiving is disabled Shutting down archive processes Archiving is disabled Archive process shutdown avoided: 0 active ARCH: Archiving is disabled Shutting down archive processes Archiving is disabled Archive process shutdown avoided: 0 active Thu Dec 19 16:51:20 2002 Starting ORACLE instance (normal) Thu Dec 19 16:51:20 2002 WARNING: EINVAL creating segment of size 0x000000000f400000 fix shm parameters in /etc/system or equivalent

  • ORACLE9iのリカバリ方法

    ORACLE9iのリカバリ方法を教えてください。 Windows server 2003 R2、Oracle9iを使用しています。 Cドライブにoracleをインストール、Dドライブにoracleのデータを格納しています。 Cドライブのハードディスクが駄目になったので、Cドライブのハードディスクを交換して Windows server 2003 R2をインストールして Windowsの標準機能のバックアップ(バックアップデータには、system stateも含んでいます。)からバックアップしておいたデータを復元させました。 ファイル単位のデータや、オラクルのサービスは復旧したのですが、オラクルのテーブルなどが開きません。 SI ObjectBrowserでオラクルを開こうとしたとき、 「ORA-01219:データベースがオープンしていません。固定の表/ビューに対する問合せのみ可能です。」 というメッセージが表示されます。サービスの再起動をしましたが、同じようなエラーがでます。 SQLPLUSで、alter database openのコマンドを入れてデータベースをオープンさせようとしたところ、 次のようなエラーが出てきました。 ORA-01122:データベース・ファイル8の照合検査でエラーが発生しました。 ORA-01110:データ・ファイル8:'D:ORACLE^ORADATA\SFRES\USER01.DBF' ORA-01207:ファイルが制御ファイルより新しくなっています。-古い制御ファイルです。 どなたか、解決方法をご存知の方、ご教授ください。

  • データベースをオープンできない

    Oracle(10.2.0.5)のパッチを当てた後、データベースをオープンすることができませんでした。 原因と対処法にについてわかりましたら、教えて頂けますか。 SQL> startup ORACLEインスタンスが起動しました。 Total System Global Area 1258291200 bytes Fixed Size 2067624 bytes Variable Size 318767960 bytes Database Buffers 922746880 bytes Redo Buffers 14708736 bytes データベースがマウントされました。 ORA-01092: Oracleインスタンスが終了しました。強制的に切断されます

  • Oracle sqlplusで接続できなくない

    お世話になっております。 Oracle11gを使っています。 PROCESSESの値を変えようとして、 以下のコマンドを実行しました。 ALTER SYSTEM SET PROCESSES = 10 SCOPE = SPFILE; Oracleを再起動した後、 sqlplusを使ってログインできなくなってしまいました。 表面的には、 ORA-12514: TNS: リスナーは接続記述子で要求されたサービスを現在認識していません。 というメッセージなのですが、サーバのログに以下の記述を見つけました。 ORA-00444: background process "MMAN" failed while starting ORA-00020: maximum number of processes () exceeded PROCESSESの値が小さすぎたようです。 SPFILEに定義されているので、 変更するにはsqlplusで接続して、 再度ALTER SYSTEM コマンドを実行すると思うのですが、 そもそもsqlplusで接続できないので、変更することができません。 データベースOpen時に、 nomoutにしてPFILEから起動しようとするとしても、 これもまた、接続できないので、使えない手段でした。 また、SPFILEのバックアップも取っていなかったので、どうにもなりません。 この窮状から復旧する方法について、教えていただければ幸いです。 よろしくお願いします。

  • ORACLE XEでインスタンスが自動起動しない

    【環境】 ・WindowsServer2012 R2 Standard ・Oracle Database 11g R2 Express Edition お世話になります。 上記環境にて、OracleXEのインストールを行ったのですが、 Windows起動時にインスタンスが自動起動してくれずに困っています。 XEとリスナーのサービスはどちらもスタートアップの種類を"自動"としており、 実際に、Windowsが起動するとサービス自体は問題なく開始状態になっています。 ただ、その状態でsqlplusなどでOracleに接続する際、 SYSDBA権限を持ったユーザであれば接続可能なのですが、 ※「アイドル・インスタンスに接続しました」というメッセージが表示されます。 一般ユーザで接続しようとすると ORA-01034:Oracle not available ORA-27101:shard memory realm dose not exist となり、接続できません。 インスタンスが起動していないからということはわかりましたが、 自動でインスタンスを起動させるにはどのようなことを行えばよいのでしょうか。 ※手動であればSYSDBAユーザでstartupをかければいいということはわかっております。 自動起動させるようなバッチファイルを作成する方法や、 最悪レジストリをイジったりといった手段もアレコレ探してみましたが これといった情報は得られませんでした。 何かお分かりになる方いらっしゃいましたらご教示の程宜しくお願い致します。