Oracle返回错误ORA-01031:特权不足


9

Oracle返回错误“ ORA-01031:特权不足”,sqlplus / as sysdba但我sqlplus sys/oracle123 as sysdba没有运行,为什么?

  • Oracle版本:Oracle数据库10g企业版10.2.0.1.0版-64位
  • Linux版本:SUSE Linux Enterprise Server 11(x86_64)

我知道Oracle在运行时会使用OS身份验证sqlplus / as sysdba,我也仔细检查了sqlnet.ora并包含它SQLNET.AUTHENTICATION_SERVICES = (NTS)

我还更改了oracle用户的组,oracle用户完全属于dba组,因为当我运行命令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用户身份登录服务器计算机。

Answers:



0

Post / wait是信号量 IPC子系统-可能是您的信号量用尽了,或者信号量的创建权限不允许您的用户访问它们-检查的输出ipcs -s,那里的权限在哪里?将信号灯的数量与进行比较ipcs -ls



-1

我在执行时遇到了一个ORA-01031错误的相同问题sqlplus / as sysdba。取消设置环境变量后,我的问题已得到纠正TWO_TASK

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.