আমি আমার বিকাশ মেশিনে স্থানীয়ভাবে ওরাকল 11 জি এর উদাহরণ চালাই এবং সরাসরি এসকিএলপ্লাসের মাধ্যমে স্থানীয় উদাহরণের সাথে সংযোগ করতে পারি:
c:\>sqlplus ace
SQL*Plus: Release 11.2.0.2.0 Production on Mon Mar 11 11:50:20 2013
Copyright (c) 1982, 2010, Oracle. All rights reserved.
Enter password:
Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - Beta
SQL> select count(*) from my_table ;
COUNT(*)
----------
5297
তবে আমি শ্রোতার মাধ্যমে এর সাথে সংযোগ করতে পারি না:
c:\>sqlplus -L "user/pw@(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = XE)))"
SQL*Plus: Release 11.2.0.2.0 Production on Mon Mar 11 11:52:40 2013
Copyright (c) 1982, 2010, Oracle. All rights reserved.
ERROR:
ORA-12514: TNS:listener does not currently know of service requested in connect
descriptor
SP2-0751: Unable to connect to Oracle. Exiting SQL*Plus
একইভাবে, আমি স্কেল ডেভেলপারের মাধ্যমে সংযোগ স্থাপন করলে আমি একটি ত্রুটি পাই (তবুও ORA-12505, TNS:listener does not currently know of SID given in connect descriptor
)।
এই উদাহরণটি স্থিতিশীল এবং আজ সোমবার সকাল পর্যন্ত এক বছর বা তারও বেশি সময় ধরে কাজ করে। আমাদের কর্পোরেট আইটি কখনও কখনও উইকএন্ডের মধ্যে নতুন নীতি এবং আপডেটগুলিকে চাপ দেয়, তাই আমি ধরে নিচ্ছি যে কিছু পরিবর্তন হয়েছে তবে আমি কী কাজ করতে সক্ষম হইনি।
আমি পরিষেবাটি এবং শ্রোতাদের বেশ কয়েকবার পুনরায় চালু করেছি, শ্রোতার লগ কোনও ক্লু দেয় না।
শ্রোতা ভাল মনে হচ্ছে:
c:\>lsnrctl status
LSNRCTL for 32-bit Windows: Version 11.2.0.2.0 - Beta on 11-MAR-2013 11:55:33
Copyright (c) 1991, 2010, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for 32-bit Windows: Version 11.2.0.2.0 - Beta
Start Date 11-MAR-2013 11:17:30
Uptime 0 days 0 hr. 38 min. 3 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Default Service XE
Listener Parameter File C:\oraclexe\app\oracle\product\11.2.0\server\network\admin\listener.ora
Listener Log File C:\oraclexe\app\oracle\diag\tnslsnr\FBC305BB46560\listener\alert\log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=machine.domain.com)(PORT=1521)))
Services Summary...
Service "CLRExtProc" has 1 instance(s).
Instance "CLRExtProc", status UNKNOWN, has 1 handler(s) for this service...
Service "PLSExtProc" has 1 instance(s).
Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully
1521 পোর্টটি ঠিক আছে বলে মনে হচ্ছে:
c:\>netstat -an -O | find /i "1521"
TCP 0.0.0.0:1521 0.0.0.0:0 LISTENING 4368
TCP 169.243.90.109:55307 159.185.207.100:1521 ESTABLISHED 12416
TCP [::]:1521 [::]:0 LISTENING 4368
(পিআইডি 4368 টি টিএনএসএলএসএনআর.এক্সই প্রক্রিয়া process
এছাড়াও, আমি tnsping
এক্সই পরিষেবাতে করতে পারি :
c:\>tnsping xe
TNS Ping Utility for 32-bit Windows: Version 11.2.0.2.0 - Beta on 11-MAR-2013 12:27:47
Copyright (c) 1997, 2010, Oracle. All rights reserved.
Used parameter files:
C:\oraclexe\app\oracle\product\11.2.0\server\network\admin\sqlnet.ora
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = machine.domain.com)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = XE)))
OK (210 msec)
listenerr.ora
ফাইল:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = C:\oraclexe\app\oracle\product\11.2.0\server)
(PROGRAM = extproc)
)
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = C:\oraclexe\app\oracle\product\11.2.0\server)
(PROGRAM = extproc)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = machine.domain.com)(PORT = 1521))
)
)
DEFAULT_SERVICE_LISTENER = (XE)
অতিরিক্তভাবে, এবং এটি সম্পর্কিত কিনা আমার কোনও ধারণা নেই, আমি শীর্ষে অ্যাক্সেস করতে পারি না https://127.0.0.1:8080/apex
(যদিও এর জন্য অনুমতিগুলি ভাল বলে মনে হচ্ছে)।
তাহলে আমি আর কোথায় খুঁজছি?
অনুরোধ করা তথ্য সহ আপডেট করুন:
SQL> show parameter service_names
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
service_names string XE
SQL> show parameter local_listener
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
local_listener string
আপডেট 2 : @ चमत्कार 173 সঠিকভাবে উল্লেখ করেছে, শ্রোতা ভাল ছিল না । আপডেট হওয়া 'লোকাল_স্লিটনার' পরামিতি এখন অতিরিক্ত তথ্য দেখায়:
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=machine.domain.com)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
Services Summary...
Service "CLRExtProc" has 1 instance(s).
Instance "CLRExtProc", status UNKNOWN, has 1 handler(s) for this service...
Service "PLSExtProc" has 1 instance(s).
Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
Service "XEXDB" has 1 instance(s).
Instance "xe", status READY, has 1 handler(s) for this service...
Service "xe" has 1 instance(s).
Instance "xe", status READY, has 1 handler(s) for this service...
The command completed successfully
INSTANCE_NAME
সূচনা পরামিতি এবংORACLE_SID
পরিবেশ পরিবর্তনশীল এর মান কি? আপনার ডাটাবেস কোনও কারণে ডিফল্ট শ্রোতার সাথে নিবন্ধভুক্ত হয় না। ইস্যু করার চেষ্টা করুনalter system register;
এবং তারপরে ডাটাবেসে পুনরায় সংযোগ করুন।