I am having this issue with a recently created database ( which i created manually as part of my learning exercise) on SUN Solaris, Oracle 10G R2.
Once I disconnect from my database server without logging out from database, next time when I try to connect to database (as SYSDBA) I get
ORA-01075: you are currently logged on
At this point only option I have is to kill database process (using ipcs -s to identify process id and ipcrm -a to kill process) and then restart database.
Trying to find reason behind this but so far I have no clue why this is happening.
Has anyone come across this kind of issue? Your help is much appreciated.
Let me give a bit of detail-
First time it happened when by mistake I switched off my laptop without logging out of the database session and disconnecting telnet session to server.
Next day I tried same thing and, problem repeated itself.
However this issue does not happen with other database instances running on separate server.
Lets analyze your scenario step by step .
1)When you disconnected your session , the database was not shut down(or not shutdown properly if you tried to do so ) , check alert log file for clarity .
2)Now , the first step resulted in some shared memory segments which are left over
3) Step 2 is the cause of error ORA-01075: you are currently logged on
4)The same steps may recreate the scenario in the particular server .
Now regarding why this is not happening in the other servers , depends on several questions :
1)what OS the other servers are running ?
2)For example , lets consider the scenario where the other server is bounced in the evening(due to any reasons) , and you disconnected your session in the afternoon
you will not get the error .
3)You can analyse the particluar servers alert log file to see what happened .
Thanks Renjith for your response.
This what I did when I first encountered this issue.
IPC status from <running system> as of Mon Oct 25 10:14:48 BST 2010
T ID KEY MODE OWNER GROUP
s 16777260 0xaa16a890 ra-r--- oracle oinstall
s 19 0xa0028f70 ra-r--- oracle oinstall
Using sysresv I figured out that 16777260 is culprit so I killed this process and restarted database.
When I got same error today, ipcs gave a single line output so I just killed that process and restarted database.
From your explanation, point2 seems most obvious explanation but what I fail to understand is, how come my disconnecting from server without logging out from database is causing this issue.