هر پایگاه داده یک فایل alert log دارد که اگر متغیر ORACLE_BASE تنظیم شده باشد، به صورت پیشفرض در مسیر ORACLE_BASE/diag/rdbms/<db_name>/<ORACLE_SID>/trace قرار دارد. نامگذاری فایل به صورت alert_ORACLE_SID.log است که در آن ORACLE_SID نام instance پایگاه داده است. در مطلب trace file ها توضیح داده ایم که هر trace file فایلی است که توسط هر یک از فرایندهای پس زمینه ایجاد و نوشته می شود ولی alert log که آنرا alert file نیز می نامند، فایل لاگ است که شامل پیغام ها و خطاهایی است که توسط خود اوراکل نوشته می شوند.

کدام اطلاعات در Alert Log نوشته می شوند

زمانی که توسط دستور startup nomount پایگاه داده در حالت nomount قرار می گیرد و یا به طور کلی پایگاه داده در حالت nomount است، فایل alert_ORACLE_SID.log باز می شود و اوراکل درون آن می نویسد. هر خط از alert log را که یک رکورد (record) می گویند حاوی اطلاعاتی است که یک رویداد در پایگاه داده را تعیین می کند. این فایل شامل انواع مختلفی از پیغام ها است که می توانند شامل موارد زیر باشند:

۱ – پیغام های زمان راه اندازی ((startup و خاموش شدن (shutdown) اوراکل (در مطلب راه اندازی اوراکل کاملا توضیح داده شده است.)

۲ – پیغام های زمان log switch (در مطالب online redo log کاملا توضیح داده شده است.)

۳ – خطاهایی در مورد فضای مصرفی

۴ – انواع مختلفی از خطاها که به طور مثال می تواند شامل موارد زیر باشد:

  • خطای های درونی اوراکل. خطای ORA-00600 خطای درونی اوراکل است که توسط هسته اوراکل (dbms اوراکل) ایجاد می شود.
  • خطاهای های خرابی بلاک (block corruption) با کد ORA-01578
  • خطاهای مربوط به بن بست (deadlock) با کد ORA-00060 (بن بست و کنترل همروندی در دوره مجزا مطرح شده است.)

۵ – دستورهایی مانند alter system یا startup و shutdown و یا دستورهای create و drop که مدیر اجرا کرده است. به طور مثال در بالا پارامتر max_dump_file_size را تنظیم کردیم، پس فعلا اخرین خط این فایل به همین مورد اشاره می کند.

برای خواندن محتوای alert log می توانید از دستورهای سیستم عامل لینوکس مانند cat, less, head و tail استفاده کنید و یا از برنامه های گرافیکی مانند notepad در ویندوز و یا از enterprise manager استفاده کنید. دستورهای دوم و سوم به ترتیب اولین و آخرین خط از فایل را نشان می دهند.

خطوط بالا ۳۶ خط پایانی فایل alert_orcl.log را نشام می دهد. از خط دوم مشخص است که دستور shutdown یا همان shutdown normal اجرا شده است. زمانی که دستور shutdown اجرا می شود باید سه گام زیر رخ دهد تا خاموش شدن اوراکل با موفقیت انجام شود.

  • Database Closed
  • Database Dismount
  • Oracle Instance Shutdown

در خطوط ۶ الی ۹ می بنید که یک سری از فرایندهای پس زمینه خاتمه یافته اند. در خط ۱۲ دستور ALTER DATABASE CLOSE NORMAL صادر شده است و نهایتا در خط ۲۲ اجرای آن تکمیل شده است. در خط ۲۳ دستور دستور ALTER DATABASE DISMOUNT اجرا و در خط ۲۴ تکمیل شده است. در خط آخر نیز نهایتا اجرای دستور shutdown با موفقیت تکمیل شده است.

بنابراین از alert log می توانید متوجه شوید که در هر لحظه چه اتفاقی رخ داده است. به طور مثال اگر به دلیل از کار افتادن دیسک، هر کدام از دیتا فایل ها در دسترس نباشند، یک خطا در alert log نوشته می شود. همچنین هر زمان که یک log switch رخ دهد، یک خط در این فایل نوشته خواهد شد.

در مورد دیتا فایل ها و نحوه ایجاد آنها در مطالب بعدی صحبت شده است.

در مورد مفهوم log switch و online redo log ها در مطالب بعدی صحبت شده است.