• 締切済み

ノーアーカイブログモードからアーカイブログモードへの変更

ノーアーカイブログモードからアーカイブログモードへ変更する際の手順に関してご教授願います。 (1)shutdown immediate; (2)startup mount (3)alter database archivelog; (4)archive log list;  ←確認 (5)alter database open; (1)~(5)の手順は理解できています。上記以外に 初期化パラメータを変更しなければならないと思うのですが(LOG_ARCHIVE_DEST_n)、initファイルの差し替えはどの段階ですればいいでしょうか? また、上記手順以外に行うことはありますでしょうか? 使用しているOSはHP‐UXです。

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

みんなの回答

回答No.2

initファイルの差し替えはシャットダウンの状態でなければダメでしょうか?シェルを一回たたいてアーカイブログモードに変更するしたいと考えております。 →この質問にだけ答えるとなると 「その必要はありません」が答えになります。 Oracle Masterでも習いますが、initファイルはstartup nomountの 際に読み込まれるので起動中に内容を変更しても起動中のインスタンスに 何ら影響を与えません。 ただし、entreeさんのおっしゃっているように アーカイブログ⇔ノーアーカイブログの切り替えには initファイルの編集は一切必要ありません。 最初からアーカイブログ用にLOG_ARCHIVE_DEST_nを記述 しておけばいいだけです。 (LOG_ARCHIVE_DEST_nを設定せずにアーカイブログモードで起動 しても確か $ORACLE_HOME/rdbms/配下かどこかに自動で出力したような気がします。)

tomosuke07
質問者

お礼

シェルを実行する前にLOG_ARCHIVE_DEST_nを記述しておけばいいということですね。 回答ありがとうございます。

  • entree
  • ベストアンサー率55% (405/735)
回答No.1

> 上記以外に初期化パラメータを変更しなければならないと思うのですが > (LOG_ARCHIVE_DEST_n)、initファイルの差し替えはどの段階ですればいい > でしょうか? (1)shutdown immediate の時点でディレクトリを作成してパラメータを変 更すればいいです。LOG_ARCHIVE_DEST_n はARCHIVELOGモードでなければ効 果を持ちません。(ディレクトリの存在チェックはされたかもです) > また、上記手順以外に行うことはありますでしょうか? 9i以前であればLOG_ARCHIVE_START=TRUEも設定しておかなければ自動的に アーカイブされません。10g以降であれば特にありません。 余談ですが、(4) archive log list は 9i までの確認方法です。 10g 以降であれば以下のSQL を使いましょう。結果が異なる場合があります。 select log_mode from v$database;

tomosuke07
質問者

お礼

早速のご回答ありがとうございます。 もっと詳細に質問するべきでした。 ノーアーカイブログモードからアーカイブログモードに変更する時間が1時間しかないので、コマンドを全部手打ちするよりシェルを利用するほうがいいかと考えております。(インスタンスが30近くあるので) 再度質問になって申し訳ございません。 initファイルの差し替えはシャットダウンの状態でなければダメでしょうか?シェルを一回たたいてアーカイブログモードに変更するしたいと考えております。 >余談ですが、(4) archive log list は 9i までの確認方法です。 私が今仕事で利用しているのは10gです。オラクルマスター10gに「archive log list」が記載されていたので、これでもいいかと思っていました。アドバイスありがとうございます。

関連するQ&A

  • ORA-00439について

    ORACLEをインストールし、データベースの作成を行っています。 その際「ORA-00439:feature not enabled:Managed Standby」とエラーが出て止まってしましました。 どうやらこのエラーは、 Standard Edition(SE)では使用できない初期化パラメータ(LOG_ARCHIVE_DEST_n)が指定されているとの事。 1)データベースのインストールは、OCDAを使用して作成しました。上記パラメータが関係するアーカイブに関しては、「ARCHIVELOGモード」のチェックボックスをチェックしただけで、直接init.oraを記述したわけではないのですが、インストールしたのがSEであろうとEEだろうと、"LOG_ARCHIVE_DEST_N"と指定されてしまうのでしょうか? 2)SEでは"LOG_ARCHIVE_DEST"が使用できるようなのですが、直接init.oraを書き換えるだけでよいのでしょうか? 3)SEとEEのどちらをインストールしたかうろ覚えなのですが、これはどのようにして知ることができるのでしょうか?(アプリケーションの追加と削除には、ORACLEが載っていませんでした) 以上、よろしくお願いします。

  • 『ALTER SYSTEM』と『ALTER DATABASE』の違い

    はじめまして、現在Oracle新Silver取得に向けてDBA1を勉強しています。 ※SilverFellowは取得済です。 DBA1の内容に関して皆様に質問なのですが、Alterコマンドはいろいろな種類が ありますよね? たとえば、alter system,alter database,alter table,alter user等など・・・ ここに出てくるsystemとdatabaseの違いが良く分かりません。 覚えろ!と言われればそれまでかもしれませんが、この二つのコマンドの棲み分け がいまいちよくわからないため、覚えられません。 皆様はどうやって、理解(覚え)しましたか? よろしければお教えください。 systemとdatabaseの違いがわからない例 alter system archive log all; alter database add logfile; alter database open; お願いいたします。

  • startup、shutdownコマンド実行時のエラーでもリターンコードは0

    whenever oserror exit failure whenever sqlerror exit failure を付けていても startupコマンドもしくはshutdownコマンドを実行してエラーが発生した場合、リターンコードは0になってしまいます (alter database openのようにalter文を使うと、リターンコードは0以外になります)。 これは仕様なのでしょうか? [環境] OS:Solaris9 DB:Oracle9i

  • 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

  • オンラインREDOログ障害からの復旧方法について

    現在、Oracle11g Release2 11.2.0.3(ASM使用) の環境で、オンラインREDOログファイルが全て消失した場合を想定して、以下の手順で復旧の方法をテストしています。 ----- 1.sqlコマンドでテーブルに1件データを挿入する。 2.フルバックアップ(バックアップセット)を取得する。 3.sqlコマンドでテーブルに1件データを挿入する。 4.累積増分バックアップを取得する。 5.sqlコマンドでテーブルに1件データを挿入する。 6.DBをシャットダウンする。 (RMAN> shutdown immediate;) 7.オンラインREDOログファイルを全て削除する。 8.DBをマウントする。 (RMAN> startup mount;) 9.リストアをする。 (RMAN> restore database;) 10.バックアップの際に除外している表領域をオフラインにする。 (SQL> Alter database datafile '+DATA/orcl/DATAFILE/hoge2' offline drop;) 11.リカバリをする。 (SQL> recover database using backup controlfile until cancel;) (ログの指定は AUTO) 12.DBをオープンする。 (RMAN> alter database open resetlogs;) 13.sqlコマンドでテーブルの中を確認する。 (SQL> select * from HOGEHOGE;) (データが1件) ----- 上記の手順でDBをオープンにするところまで上手くいったのですが、 私の考えでは、13でテーブルを確認するとデータが2件はいっていると思ったのですが、 結果は、1件だけでした。 累積増分バックアップを取得した時点(データが2件入った状態)まで戻したいのですが、 解決の手がかりになる情報などがございましたらご教示いただけますでしょうか。 よろしくお願いします。

  • オラクルバックアップについて

    オラクル初心者で、はじめて、バックアップを行います。 わかりにくい文章ですが、宜しくお願いします。 現在、Oracle9iをアーカイブログモードで運用しています。 そこで、下記のように、OSコマンドによる差分バックアップを計画しております。 日~金がオンラインバックアップ(ホットバックアップ):差分 土曜日はオフラインバックアップ(コールドバックアップ):フル オンラインバックアップでは、オンラインREDOログファイルのアーカイブ(alter system archive log current)を実行後に,アーカイブログのみ取得しようと考えておリます。 リカバリについては、土曜日のオフラインバックアップで取得したバックアップにオンラインバックアップで取得したアーカイブログを適用しようと考えております。 そこで質問になります。 (1)アーカイブログを取得する際に、バックアップモードの変更・解除はいらないという認識でよろしいでしょうか? (いろんな資料を見ると、バックアップモードについては書かれていないので、不安で質問いたしました。) (2)オンラインバックアップでの制御ファイルのバックアップは必要ないということでよろしいのでしょうか? (3)オンラインREDOログファイルのアーカイブ(alter system archive log current)を実行についても、注意点等あれば、ご教授ください。 そのほかに、気になる点があれば、ご指摘ください。 また、関連するホームページなどありましたら教えてください。 説明不足な点があるかもしれませんが、宜しくお願い致します。

  • Oracle のREDOログアーカイブについて

    Oracle のREDOログアーカイブについて Oracle のアーカイブREDOログファイルの基本的な事を教えてください。 [ 運用条件 ] オンラインREDOログ三多重化 (メンバ 3つ)、アーカイブログモードあり、 自動アーカイブ、アーカイブプロセス数は2、データガードなし 上記条件で全REDOログファイルに障害がない場合、ARCHプロセスは多重しているどのREDOログメンバからアーカイブREDOログファイルを作成するのでしょうか。使用版数はOracle 10g R2です。

  • Oracle RMANでのリカバリ

    ORACLE9iのRMANでリカバリの検証をしていますが、 上手くいきません。 RMANに詳しい方、ご教授下さい。 運用時、RMANのバックアップ(フルバックアップ、アーカイブログバックアップ)は日々行っており、 OS丸ごとのバックアップは月ごとに行っています。 それで、HDD障害が起こったときに、OS丸ごとバックアップを利用してバックアップした日(月初)に戻して、 本日のRMANのバックアップを利用して、リストアができるかを検証しています。 [環境] Oracleのバージョン[Oracle9i 9.2.0.7.0] アーカイブモード [検証内容] (1).DBの設定、RMANの設定 -> (2).REDOログのCURRENT確認 -> (3).Windowsの機能でバックアップ -> (4).REDOログが上書きされてアーカイブログがはかれるまでDBのテーブルにデータを追加 -> (5).RMANでバックアップ -> (6).REDOログのCURRENT確認((2)のときのCURRENTが異なるようにした) -> (7).(3)のバックアップを使ってWindowsの機能で復元 -> (8).(5)のRMANバックアップデータ (フルバックアップデータ、アーカイブログバックアップデータ)を置換して、RMANのリストア (2)の時点のREDOログの状態を「select * from v$log」で確認したところ、 GROUP#2がCURRENTでした。 GROUP# SEQUENCE# ARCHIVE STATUS 1 2 YES INACTIVE 2 3 NO CURRENT 3 1 YES INACTIVE (6)の時点のREDOログの状態を確認したところ、 GROUP#3がCURRENTでした。 GROUP# SEQUENCE# ARCHIVE STATUS 1 11 YES INACTIVE 2 12 YES ACTIVE 3 13 NO CURRENT (8)のとき、「RMAN> restore database;」のコマンドを打ったとき、下記のエラーが出てきて、 リストアできませんでした。 エラー「ORA-19612:データ・ファイル1はmissing or corrupt dataのためリストアされませんでした。」 CURRENTの状態、位置によってリストアできたりできなかったりするのでしょうか? SEQUENCE#の値を変更、もしくは、アーカイブログのバックアップから、REDOログをリストア する必要があるのでしょうか? または、他に必要な設定をする必要があるのでしょうか? リカバリするときのコマンドは、下記の通りです。 SET ORACLE_SID=<SID名> rman target / catalog rman/rman@RMAN RMAN> STARTUP NOMOUNT RMAN> RESTORE CONTROLFILE; RMAN> ALTER DATABASE MOUNT; RMAN> RESTORE DATABASE; RMAN> ALTER DATABASE OPEN RESETLOGS; 前回、同じようなやり方でリストアしたときは、上手く行きました。 そのときは、下記のような状態でした。 ((4)のときのデータ件数は少し異なり、(6)の時点でGROUP#1がCURRENTでした。) GROUP# SEQUENCE# ARCHIVE STATUS 1 11 NO CURRENT 2 9 YES INACTIVE 3 10 YES ACTIVE 以上、宜しくお願いします。

  • 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 が出ていますが、どこから調査をすればいいのか暗闇の中です。 お助言頂きますようお願い致します。

  • アーカイブログのサイズについて

    環境:Oracle9i 9.2.0.1.0 言語:VB6 OLTPの処理を行っている販売管理システムです。 夜間にバッチ処理を行っています。 最近アーカイブログモードに変更しましたが、夜間の一部のバッチによる影響でアーカイブログのサイズがかなり大きくなっています。 そのバッチ自体は一時的に作成されるテーブルがあり、そのテーブルが大きく影響しているものと思われます。 そこでご質問なのですがREDOログの書込みを上記テーブルは対象外にするように変更できないものでしょうか? また、アーカイブログのサイズがかなり大きくなる問題についてなにか解決策などがありましたらアドバイスお願い致します。 ちなみに今の現行システムでは1週間で30GB程度まで大きくなっています。 手動でアーカイブログファイルを別のディスクに移動しています。