منبع اصلی نوشتار زیر در این لینک قرار دارد

خطای اوراکل : ORA-01033: ORACLE initialization or shutdown in progress

در صورتی که پایگاه داده را بصورت نادرست Shutdown کنید، پس از ورود مجدد به سیستم و در زمان اتصال به پایگاه داده اوراکل، خطای ORA-01033: ORACLE initialization or shutdown in progress نشان داده می شود (مانند شکل زیر). برای رفع این مشکل باید با مجوز SYSDBA به پایگاه داده متصل شده و نخست پایگاه داده را shutdown کنید و سپس آنرا startup کنید. برای اجرای دستور های shutdown, shutdown immediate و ،startup کاربر باید مجوز SYSDBA را داشته باشد. هنگامی که به پایگاه داده می خواهیم متصل شویم، خطایی مانند شکل زیر نشان داده می شود.

sqlplus system/password

برای رفع مشکل، باید با مجوز SYSDBA به پایگاه داده متصل شویم. خط زیر در جلوی اعلان بنویسید.

Enter user-name: / as sysdba

سپس وضیعیت instance و database را بررسی می کنیم.

;select status, database_status from v$instance

STATUS DATABASE_STATUS
———— —————–
STARTED ACTIVE

;select open_mode from v$database

ERROR at line 1:
ORA-01507: database not mounted

همانطور که مشاهده می کنید، instance به درستی start شده است، اما پایگاه داده mount نشده است. بررسی می کنیم که اگر پایگاه داده را mount کنیم و اگر با موفقیت انجام شود، پس هیچ مشکلی با datafile ها نداریم.

;alter database mount

Database altered

;select status, database_status from v$instance

STATUS DATABASE_STATUS
———— —————–
MOUNTED ACTIVE

;select open_mode from v$database

OPEN_MODE
———-
MOUNTED

خروجی بالا نشان می دهد که instance به درستی start شده و پایگاه داده نیز mount شده است اما دوباره، هنگامی که می خواهید به پایگاه داده متصل شوید، خطای ORA-01033 نشان داده می شود. باید پیش از هرگونه اتصال به پایگاه داده، آنرا به حالت READ WRITE تغییر دهیم. دوباره با مجوز SYSDBA به پایگاه داده متصل شوید.

Enter user-name: / as sysdba

پس از اتصال به پایگاه داده، آنرا با دستور زیر، به حالت OPEN تغییر می دهیم.

;alter database open

Database altered

;select status, database_status from v$instance

STATUS DATABASE_STATUS
———— —————–
MOUNTED ACTIVE

;select open_mode from v$database

OPEN_MODE
———-
READ WRITE

همانطور که می بینید، instance به درستی start شده وپایگاه داده نیز در حالت READ WRITE قرار دارد و کاربران قادر خواهند بود به پایگاه داده Login کنند. دلایل عمده ای برای این مشکل وجود دارد :

  • پایگاه داده به درستی mount نشده است.
  • مشکل با Control Files, Datafiles, ORA files ها وجود داشته باشد.
  • مشکل با سرویس پایگاه داده.
  • shutdown کردن نا مناسب پایگاه داده.

روش دیگر برای رفع مشکل

برای اتصال به پایگاه داده نیاز به مجوز SYSDBA دارید.

Enter user-name: / as sysdba

سپس دستور های زیر را به ترتیب انجام دهید.

shutdown abort

ORACLE instance shut down

startup

ORACLE instance started.

Total System Global Area 3373858816 bytes
Fixed Size 2180424 bytes
Variable Size 2113931960 bytes
Database Buffers 1241513984 bytes
Redo Buffers 16232448 bytes
Database mounted.

;select open_mode from v$database

OPEN_MODE
——————-
READ WRITE



برچسب ها : , ,