> Oracleでは、commitしない限り、SGA内(つまりメモリ上)での記憶に留まり、
> ログファイル(ディスク)には書き込まれていないと思うのですが。
> つまり、commit前のトランザクションは、インスタンスが落ちれば、
> そのデータは、消えてなくなります。

業務システムなら、頻繁にcommitするものなので
たいてい数分くらい前までには戻りませんかね。

> > レギュラーファイルの一般的なバックアップでもフルバックアップと
> > 差分バックアップを組み合わせて行うのが基本なわけですから
> > Oracleのオンラインバックアップもフルと差分(redoログ相当?)で
> > 最新に近い状態(comitt完)まで復旧できると思うのですけどね。
> あくまで、最新に近い状態ですよね。ユーザ側からすると、厳密に、
> どの時点あるいは何時まで回復できるのか知りたいと思うのですが...。
> 「曖昧では困ります。」(←というか、私がお客さんから言われてます。´Д`)

時間くらいはツールが出してくれたような気がしましたが,
(最近は戻す機会がないので忘れました)
復旧後、ログを記録しているテーブルに格納されているデータの
時間を確認してみればわかるのではないでしょうか。
ログなら時間も記録するのが普通でしょう?
ここでいうログは、REDOログファイルではなく、
アプリケーションレベルで記録しているログのことです。

> > ちなみにredoログファイルのバックアップを行う前に、
> > 新しいredoログに切り替えないとredoログが更新中でDBとして不整合が
> > 起きるはず。
> この場合、新しいredoログファイルはバックアップ対象ではないのですよね。
> もし、バックアップ対象としてDB回復にも使用するなら、同様の不整合が
> 起こりますよね。
> つまり、復旧可能なのは、切り替える前のredoログまでで、新しいredoログ
> ファイルに書き込まれたトランザクションに関しては復旧不可能でよろしいでしょうか。

REDOログファイルは追記方式なので,
稼動中にコピーしても不整合は生じないものだと認識しています。
上書きの切れ目は復旧ツールが自動認識してくれます。
それよりも問題なのは、テーブルスペース構成を変更したときに、
オフラインバックアップをし忘れると
REDOログのアーカイブがまったく役に立たないということです。
少なくとも私の知っている Oracle8iまでは。