Oracle은 ORA-01031 오류 : 권한이 충분하지 않습니다


9

Oracle이 "ORA-01031 : Insufficient privileges"오류를 반환 sqlplus / as sysdba하지만 실행 sqlplus sys/oracle123 as sysdba하지 않으면 왜됩니까?

  • Oracle 버전 : Oracle Database 10g Enterprise Edition 릴리스 10.2.0.1.0-64 비트
  • Linux 버전 : SUSE Linux Enterprise Server 11 (x86_64)

나는 오라클이 실행시 OS 인증을 사용한다는 것을 알고 있으며 sqlplus / as sysdba, 또한 sqlnet.ora를주의 깊게 확인했으며 여기에 포함되어 있습니다 SQLNET.AUTHENTICATION_SERVICES = (NTS).

또한 oracle 사용자 그룹을 변경했습니다. oracle user는 dba 그룹에 속합니다. command id를 실행할 때 다음 정보가 반환되기 때문입니다.

oracle@linux-mage:~> id
uid=103(oracle) gid=106(dba) groups=105(oinstall),106(dba)

다른 정보는를 통해 로그온 할 수 sqlplus sys/oracle123 as sysdba있지만 인스턴스를 종료 할 수 없다는 것입니다.

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>

strace -o trace.out sqlplus "/ as sysdba"를 실행하고 다음과 같은 출력 메시지가 나타납니다. strace 메시지가 너무 큽니다. 그래서 나는 그것을 pastebin에 붙여 넣습니다. 이 링크를 방문하십시오

http://pastebin.com/YpjVeG8u

ipcs -s 및 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

Linux에서 oracle 사용자로 로그온 했습니까?

예, 서버 컴퓨터에 oracle 사용자로 로그온했습니다.

답변:



0

Post / wait는 세마포어 IPC 하위 시스템 입니다. 세마포어 가 부족하거나 사용자가 액세스 할 수없는 권한으로 세마포어가 생성되었을 ipcs -s가능성이 있습니다. ? 세마포어 수를와 (과) 비교하십시오 ipcs -ls.



-1

을 수행 할 때 ORA-01031 오류가 발생하는 것과 동일한 문제가있었습니다 sqlplus / as sysdba. 환경 변수를 설정 해제하면 문제가 해결되었습니다 TWO_TASK.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.