اوراکل راهحلی به نام  Flash Back را در نسخه 9i برای پاسخگویی به این نیاز ارائه داده و اکنون در نسخه  10g تکمیل شده آن را با امکانات بسیار وسیع تر در اختیار کاربران گذاشته  است.
وقتی کاربری ناخواستهً سیستم  را دچار مشکل میکند، شما به یک ابزار جهت رفع اشکال آن نیاز دارید. به این منظور  شرکت اوراکل در Database 10g تکنول پروژیهای مختلفی را در قالب Flash Back برای  رفع خطاهای انسانی(human errors) فراهم کرده است. این تکنولوژی، تغییراتی اساسی بر  روی استرداد و بازیافت اطلاعات گذاشته است. 
در گذشته، ظرف چند دقیقه بانک  اطلاعاتی دچار اشکال میشد و بازیافت آن ساعتها طول میکشید، اما با تکنولوژی  Flash Back زمان تصحیح خطاها برابر زمان بروز آنها شده است. 
همچنین استفاده از  این تکنولوژی بسیار آسان و ساده بوده و یک دستور کوتاه به جای دستورات پیچیده  میتواند تمامی بانک اطلاعاتی را بازیابی کند. Flash Back سعی میکند بهترین آنالیز  را از اطلاعات از دست رفته به عمل آورد تا تمامی آنها را بیکم و کسر بازگرداند.  Flash Back همچنین خرابیهای گسترده و وسیع را نیز به سرعت بهبود میبخشد که این  موجب کاستهشدن زمان down بودن سیستم میشود- مثل وقتی که تمامی سفارش های مشتریان  این ماه از سیستم حذف شوند. Flash Back در بانک اطلاعاتی اوراکل بینظیر است و برای  بازیابی اطلاعات در تمامی سطوح (شامل یک ردیف، یک تراکنش، یک جدول، یک table space  و یا یک بانک اطلاعاتی نامحدود) راهکاری دارد و تنها باید جهت استفاده از آن، در  ابتدا تنظیمات اولیهای را انجام دهیم (مثلاً تنظیم مقدار پارامترundo-retention و  ...).
Flash Back Query
این ویژگی یکی از خصوصیات معرفیشده در بانک اطلاعاتی  اوراکل 9i بود که به DBA و کاربر اجازه میدهد هر اطلاعاتی را در point in timeهای  گذشته query بگیرد. این ویژگی قدرتمند میتواند برای مشاهده و احیاکردن اطلاعات از  دست رفته که ممکن است به صورت تصادفی پاک شده و یا تغییر یافته باشند، استفاده شود.  به عنوان مثال:
SELECT * FROM  customer AS OF “1:00PM” WHERE… 
این دستور ردیفهایی از جدولcustomer را از ساعت 2 بعدازظهر امروز نمایش  میدهد.
برنامهنویسها میتوانند جهت ساخت تصحیحکننده اتوماتیک خطا در درون  برنامههایشان از این ویژگی استفاده کنند و به کاربران اختیار میدهد که اطلاعات را  برگردانند و خطاهایشان را به جای تحمیلکردن انجام این کار به DBAها شخصاً تصحیح  کنند. 
اداره کردنflash back query بسیار آسان است، چرا که بانک اطلاعاتی به  صورت اتوماتیک اطلاعات ضروری را به منظور بازیابی اطلاعات- در زمانی قابل تنظیم از  گذشته- نگه میدارد.
Flash Back Versions Query 
این ویژگی راهی برای دیدن تغییرات اعمال شده بر بانک  اطلاعاتی را در سطح ردیف فراهم میکند. یکی از دستورات توسعه یافتهSQL است که  بازیابی تمامی نسخههای مختلف یک ردیف از نظر تغییرات اعمال شده را- در فاصله زمانی  تعیین شده- اجازه میدهد. به عنوان مثال:
SELECT * FROM customer VERSION BETWEEN “1:00PM” AND  “3:00PM” WHERE… 
این دستور هر  نسخهای از ردیف- یعنی هر تغییری که با یک تراکنش اعمال شده- را بین ساعت 2 و 3  بعدازظهر امروز نمایش میدهد. با استفاده از آنDBA ها میتوانند با دقت، به زمان و  چگونگی تغییر یافتن اطلاعات و نیز ردگیری به یک کاربر، برنامه و یا تراکنش خاص  اشارهکنند و به مدیر بانک اطلاعاتی این امکان را میدهد که سرچشمه اینگونه  خرابیهای منطقی را در یک بانک پیگیری کند و آن را تصحیح نماید. همچنین این خصوصیت  به برنامهنویس نیز این امکان را میدهد تا به راحتی برنامه خود راdebug  کند.
Flash Back Transaction Query 
این ویژگی راهی را برای مشاهده  تغییرات اعمال شده روی بانک اطلاعاتی و در سطح تراکنش فراهم میکند. یک دستور توسعه  یافتهSQLای است که به شما اجازه میدهد تا تمامی تغییرات انجام شده توسط  یکtransaction را ببینید. به عنوان مثال:
SELECT * FROM dba-transaction-query WHERE xid =  “000200030000002D”; 
این  دستور برآیند تمامی تغییراتی را که با این تراکنش روی بانک اعمال شده است را نمایش  میدهد. در حقیقت، دستورات استفاده شدهSQL ای را جبران کرده و برمیگرداند و  میتواند برای برعکسکردن همه تغییرات اعمال شده روی تمامی ردیفهایی که از این  تراکنش تغییر یافتهاند استفاده شود. مجدداً توسط چنین ابزار دقیقی،DBA و  برنامهنویس میتوانند صریحاً مشکلات منطقی رخ داده روی بانک اطلاعاتی و یا برنامه  را تشخیص دهند.
Flash Back Database 
برای آوردن بانک اطلاعاتی بهpoint in time قبلی، روش  متداولrecovery کردن بهpoint in time دلخواه است. این روش میتواند ساعتها و یا  حتی روزها طول بکشد، زیرا که باید تمامی بانک اطلاعاتی از روی نسخههای پشتیبان  تهیه شدهrestore شود و بهpoint in time قبل از بروز خطاrecover  شود.
Flash Back Database یک  تدبیر جدید برایrecovery کردن به point in timeدلخواه است که به سرعت بانک اطلاعاتی  اوراکل را به حالت اولیه قبل از رویداد خطا باز میگرداندlog هایی که flash back  تولید میکند برای ردگیریblock هایی که از نسخه قبل تغییر کرده بودند استفاده  میشوند. یک راه برای درک بهتر این ویژگی تصور گرفتن نوعیcontinuous backup  یاstorage snapshot از سیستم است که این کار توسط خود بانک صورت میگیرد.  
وقتی که نیاز به اجرایrecovery  احساس شود، log هایflash back به سرعت بازخوانی و موجبrestore شدن پایگاه داده  بهpoint in time قبل از خطا میشوند و این در حالی است که تنهاblock های تغییر  یافته مجدداً restore میشوند. این کار بینهایت سریع است و زمانrecovery را از  ساعتها به فقط چند دقیقه کاهش میدهد و استفاده از آن نیز بسیار آسان خواهد بود.  یک بانک اطلاعاتی میتواند به وسیله یک دستور ساده (به صورتی که در زیر مشاهده  میکنید) به ساعت 58:1 بعدازظهرrecover شود:
FLASHBACK DATABASE TO “1:58PM”  ;
این دستور بهrestore کردن  اطلاعات از رویtape نیازی ندارد،down time سیستم ابداً طولانی نخواهد بود و هیچ  گونه روش پیچیدهای به منظورrecovery اطلاعات مورد نیاز نیست. شما همچنین پس از  استفاده ازflash back میتوانید، بانک را در حالت “فقط  خواندنی”
open کنید و محتویات  درون آن را مورد آزمایش قرار دهید. اگر تصمیم گرفتید که به زمان قبلتر از آن بروید  و یا هنوز به زمان مورد نظر نرسیدهاید، میتوانید دستورflash back را برای رسیدن  به بهترینpoint in time مجدداً استفاده نمائید. 
flash back همچنین بباOracle Data Guard یکپارچه میشود،  بنابراین شما میتوانید هم سیستم عملیاتی اصلی و هم سیستمstandby راflash back  کنید.
Flash Back Database مشابه  این است که دکمهundo و یاrefresh به قبل از پیدایش مشکل، در بانک اطلاعاتی وجود  داشته باشد.
Flash Back Table
این ویژگی قابلیتrecover کردن یک  جدول و یا دستهای از جداول را به point in time تعیین شده در زمان گذشته به سرعت و  به سادگی برای یک مدیر بانک اطلاعاتی فراهم میکند و در بسیاری از موارد نیاز به  اجرا کردن عملیات پیچیدهrecovery را برایpoint in timeدلخواه کم میکند.به عنوان  مثال:
FLASHBACK DATABASE  orders, order-items TO TIMESTAMP (JUL-07-2003,  02
00);
این دستور هر  بهروزسازیای را که روی جداولorders وorderitems بین زمان فعلی سیستم و timestamp  تعیین شده انجامگرفته است، برمیگرداند.
این ویژگی کل عملیات را به صورتon-line وin-place اجرا کرده و به  درستیconstraint های موجود بین جداول صدمهای نخواهد زد. 
این ویژگی مشابه آن است که در بانک اطلاعاتی دکمهundo  برای هر جدول وجود داشته باشد.
Flash Back Drop 
drop و یاdelete کردنobject های بانک اطلاعاتی به صورت  تصادفی، مشکلی است که کاربران دارند و تقریباً همیشه آن را مرتکب  میشوند.
“من فکر کردم زمانی که  داشتم جدول راdelete میکردم به سیستم آزمایشی وصل هستم!”، جملهای است که اغلب در  قسمت ساپورت از کاربران شنیده میشود. کاربران به زودی متوجه اشتباهشان میشوند،  اما هنگامی که دیگر خیلی دیر شده است و راهی نیست که به آسانی جداولdrop شده،index  های آنها،constraint ها وtrigger هاrecover شوندobject . هایی که یکبارdrop شوند،  دیگر برای همیشه از دست رفتهاند. در مورد جداول خیلی مهم و با ارزش و یاobject های  آنها (از جملهindex ها،partition ها و یاcluster ها)،DBA باید یکpoint in time  recovery را که شاید خیلی هم وقتگیر باشد اجرا نماید که این موجب میشود تا  تراکنشهای صحیح اخیر متضرر شوند.
Flash Back Drop یک شبکه ایمن را برای زمانی کهobject ها در بانک اطلاعاتی  اوراکل10g از بین میروند فراهم میآورد. وقتی که یک کاربر جدولی راdrop کند،  اوراکل آن را درrecycle bin قرار میدهدobject . ها تا زمانی که کاربر تصمیم بگیرد  به صورت دائمی آنها را حذف کند و یا اینکه از نظر میزان فضای خالی رویtablespace ای  که شامل آن جدول است در مضیقه باشد درونrecycle bin اوراکل- که محلی مجازی است برای  مستقر شدنobject هایdrop شده- باقی خواهند ماند. کاربران میتوانند درونrecycle bin  را نگاه کرده و جدولهایdrop شده وobject های وابسته آنها راundrop کنند. به عنوان  مثال جدولdrop شدهemployee و تمامیobject های وابسته آن با دستور زیرundrop  میشوند.
FLASHBACK TABLE  employee BEFORE DROP;
flash  back drop مشابه آن است که دکمهundo و یا refresh به قبل از مشکل برای یک جدول و  وابستههای آن وجود داشته باشد. 
در پایان ذکر این نکته ضروری است که ویژگیFlash Back جایگزین مناسبی برای  حذف همیشگی استراتژیهایBackup نیست.