Oracle gibt den Fehler "ORA-01031: Unzureichende Berechtigungen" zurück. Wenn ich ausgeführt werde sqlplus / as sysdba
, sqlplus sys/oracle123 as sysdba
aber nicht, warum?
- Oracle-Version: Oracle Database 10g Enterprise Edition Version 10.2.0.1.0 - 64 Bit
- Linux-Version: SUSE Linux Enterprise Server 11 (x86_64)
Ich weiß, dass Oracle beim Ausführen die Betriebssystemauthentifizierung verwendet sqlplus / as sysdba
. Ich habe auch sqlnet.ora sorgfältig überprüft und es enthält SQLNET.AUTHENTICATION_SERVICES = (NTS)
.
Ich habe auch die Gruppe des Oracle-Benutzers geändert. Der Oracle-Benutzer gehört absolut zur dba-Gruppe, da beim Ausführen der Befehls-ID die folgenden Informationen zurückgegeben werden:
oracle@linux-mage:~> id
uid=103(oracle) gid=106(dba) groups=105(oinstall),106(dba)
Eine weitere Information ist, dass ich mich anmelden kann sqlplus sys/oracle123 as sysdba
, aber die Instanz nicht herunterfahren kann:
oracle@linux-mage:~> sqlplus sys/oracle123 as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on Mon Sep 5 16:29:57 2011
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected.
SQL> shutdown immediate
ORA-24324: service handle not initialized
ORA-24323: value not allowed
ORA-27140: attach to post/wait facility failed
SQL> shutdown abort
ORA-01031: insufficient privileges
SQL>
Ich habe strace -o trace.out sqlplus "/ as sysdba" ausgeführt und die folgende Ausgabemeldung erhalten. Die Strace-Nachricht ist zu groß. Also füge ich es in den Pastebin ein. Bitte besuchen Sie diesen Link
Informationen zu ipcs -s und ipcs -ls:
oracle @ linux-mage: ~> ipcs -s
------ Semaphore Arrays --------
key semid owner perms nsems
oracle@linux-mage:~> ipcs -ls
------ Semaphore Limits --------
max number of arrays = 200
max semaphores per array = 250
max semaphores system wide = 32000
max ops per semop call = 100
semaphore max value = 32767