برای اطلاع از بالا بودن دیتابیس اوراکل بررسی دو موضوع اهمیت دارد:
1) بالا بودن دیتابیس
2)بالا بودن listener
برای این منظور اینگونه باید عمل کنیم در cmd دستور زیر را وارد نمایید تا از بالا بودن listener آگاه شوید:
telnet database-IP 1521
در صورتی که بشما پیغام خطا برگرداند باید به سرور دیتابیس با پروتکل ssh متصل شوید و مراحل زیر را در آنجا ادامه دهید:
root# su - oracle
oralce$ sqlplus / as sysdba
در صورتی که در پاسخ دستور زیر مقدار زیر نشان داده شد مشخص است که دیتابیس پایین است:
SQL*Plus: Release 11.2.0.1.0 Production on Sun May 25 11:11:54 2014
Copyright (c) 1982, 2009, Oracle. All rights reserved.
Connected to an idle instance.
SQL>
و باید دستور زیر را وارد نمایید:
SQL> startup
با اجرای دستور زیر از بالا آمدن دیتابیس اطمینان حاصل کنید:
SQL> select * from dual;
خروجی این دستور:
D
-
X
اگر هنوز جواب دستور telnet database_IP 1521 پیغام خطا می باشد باید از بالابودن listener بررسی شود. برای این منظور دستورات زیر را وارد کنید:
oracle$ lsnrctl status
خروجی این دستور وضعیت listener را مشخص میکند. اگر پیغامی شبیه:
(ADDRESS=(PROTOCOL=tcp)(HOST=XXXX)(PORT=1521))) Services Summary... Service
"XXXX" has 1 instance(s). Instance "XXXX", status READY, has 1 handler(s) for this
service... Service "XXXX" has 1 instance(s). Instance "XXXX", status READY, has 1
handler(s) for this service... The command completed successfully
بود Listener بالاست ولی اگر پیغامی شبیه
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
Linux Error: 111: Connection refused
بود listener پایین است و باید بادستور زیر آن را بالا آورد
oracle$ lsnrctl start
گاهی ممکن است listener بااین دستور بالا نیاید در این هنگام با تکرار stop و start کردن آن ممکن بالا بیاید و یا با kill کردن کلیه processهایی که روی پورت 1521 گوش میدهند (lsof -i :1521)