ablog

不器用で落着きのない技術者のメモ

Oracle Database のインスタンスリカバリではオープンしてからロールバックする

Oracle Database のインスタンスリカバリはデータベースがオープンして使える状態になった後にバックグラウンドでロールバックが行われる。トランザクションロールバックが完了していないブロックを変更し用とした場合はフォアグラウンドでロールバックが行われる。


Oracle Essentials: Oracle Database 12c (English Edition)

Oracle Essentials: Oracle Database 12c (English Edition)

  • Chapter 11. Oracle and High Availability
    • PHASES OF INSTANCE RECOVERY

Oracle opens the database after the roll forward phase of recovery and performs the rollback of uncommitted transactions in the background in what is called deferred rollback. This process reduces database downtime and helps to reduce the variability of recovery times. If a user’s transaction begins working in a database block that contains some changes left behind by an uncommitted transaction, the user’s transaction will trigger a foreground rollback to undo the changes and will then proceed when rollback is complete. This action is transparent to the user—they don’t receive error messages or have to resubmit the transaction.