رفع مشکل Start نشدن DB Console اوراکل در ویندوز

اگر بعد از نصب Oracle 11g بر روی سیستم عامل ویندوز نسخه 2008R2 هنگام Start کردن Enterprise Manager با پیغام زیر روبرو شویم:

دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران
Environment variable ORACLE__UNQNAME not defined. Please set ORACLE__UNQNAME to database unique name.

برای رفع مشکل مربوط به Error بالا باید سه سوال بررسی شود.

  1. URL که قرار است به کمک آن به Oracle متصل شد چیست و آیا URL مورد استفاده صحیح است؟
  2. ORACLE__UNQNAME سیستم چیست و اینکه به درستی تنظیم شده باشد.
  3. Enterprise Manager در هنگام نصب تعریف و تنظیم شده است ؟

برای بررسی ORACLE__UNQNAME که یک operating system environment است، سیستم به اوراکل وصل شده و دستور زیر را تایپ می کنیم.

SELECT name, db_unique_name FROM v$database;

این متغیر محیطی ویندوز به صورت پیش فرض تعریف نشده است و نیاز به انجام دستی آن است . OUI (Oracle Universal Installer) برای پیکربندی راه اندازی سرویس DB Console از آن به عنوان یک متغیر در سطح سیستم استفاده می کند.با استفاده از دستور زیر در cmd از پورتی که برای Listener استفاده می شود اطمینان حاصل کنید.

C:\> netstat -an | findstr /C:1158

درصورت عدم تعریف صحیح متغیر با زدن دستور پیغام زیر را نمایش می دهد.

C:\> emctl status dbconsole
Environment variable ORACLE_UNQNAME not defined. Please set ORACLE_UNQNAME to database unique name.

اگر سرویس DB Console از Object استفاده کرده باشد می توان به کمک دسنورات زیر به آسانی با command line نسبت به Stop و Start نمودن سرویس OEM اقدام شود.

C:\> emctl stop dbconsole
C:\> emctl start dbconsole

درصورتی که امکان Restart کردن سرویس با دسنورات ذکر شده نباشد نیاز است که تنظیمات دو پارامتر محیطی ORACLE__UNQNAME و ORACLE__HOSTNAME را بررسی نمایید.با پیمودن مسیر %ORACLE__HOME\\oc4j\\j2ee\\ folder می توان نامی که DB Console از آن استفاده می کند و متغیرهای محیطی تنظیم شده را مشاهده کرد. دقت شود که این نام ها به صورت فایل تعبیه شده است و گاهی امکان تغییر آنها میسر نمی باشد.با تنظیم متغیرهای ذکر شده که در شکل بالا نیز نشان داده شده است در cmd می توان سرویس emctl را به درستی Run نمود.

C:\>set ORACLE_HOSTNAME=localhost
 C:\>set ORACLE_UNQNAME=orcl
 C:\>emctl status dbconsole
Oracle Enterprise Manager 11g Database Control Release 11.2.0.1.0
Copyright (c) 1996, 2010 Oracle Corporation.  All rights reserved.
https://localhost:1158/em/console/aboutApplication
Oracle Enterprise Manager 11g is running.
----------------------------------------------------------------
Logs are generated in directory C:\app\McLaughlinM\product\11.2.0\dbhome_1/localhost_orcl/sysman/log

با وارد کردن URL زیر در browser از DB Console استفاده کنید:

https://localhost:1158/em

منبع :

http://blog.mclaughlinsoftware.com/2012/08/23/whats-oracle_unqname/

نظرات