非Oracle使用者使用作業系統驗證登陸(/ as sysdba)

bisal發表於2013-09-26

之前寫過一篇blog《新使用者使用sqlplus / as sysdba登入報錯》http://blog.csdn.net/bisal/article/details/9285087

今天碰巧看到一篇推薦的帖子《新建一個使用者(非oracle),在不賦予dba所屬組的情況下,不能使用作業系統驗證》

http://www.itpub.net/thread-1811278-1-1.html,也是按照實際操作的流程解釋了處理的方法,很實際。


總結起來,使用非oracle用作業系統驗證登入,需要做的

1、設定相關環境變數;

2、將使用者新增到dba組中;

3、使用者具有$ORACLE_HOME相關路徑(尤其是bin)檔案的執行許可權。

但上次除錯一個測試庫,建立非Oracle安裝使用者時也試瞭如上方法,但未奏效,肯定哪裡還有點問題,找個時間再看看了要。


轉:

新建一個使用者(非oracle),在不賦予dba所屬組的情況下,不能使用作業系統驗證

[grid@dbaup ~]$ id

uid=1002(grid)gid=1003(grid) 組=1003(grid)

[grid@dbaup ~]$export ORACLE_BASE=/u01/oracle

[grid@dbaup ~]$export ORACLE_HOME=$ORACLE_BASE/product/11.0.2.1

[grid@dbaup ~]$export ORACLE_SID=gbk11g

[grid@dbaup ~]$export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin

[grid@dbaup ~]$export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib

--linux預設SQLNET.AUTHENTICATION_SERVICES=beq ,作業系統和密碼驗證都能使用,我下邊並沒有設none

[grid@dbaup ~]$ cat/u01/oracle/product/11.0.2.1/network/admin/sqlnet.ora

# sqlnet.ora NetworkConfiguration File: /u01/oracle/product/11.0.2.1/network/admin/sqlnet.ora

# Generated byOracle configuration tools.

NAMES.DIRECTORY_PATH=(TNSNAMES, EZCONNECT)

ADR_BASE =/u01/oracle

--作業系統認證報ORA-01031: insufficient privileges

[grid@dbaup ~]$sqlplus / as sysdba

SQL*Plus: Release11.2.0.1.0 Production on Tue Aug 20 21:39:04 2013

Copyright (c) 1982,2009, Oracle.  All rights reserved.

ERROR:

ORA-01031:insufficient privileges

Enter user-name:

新開一個視窗(視窗2),為grid使用者新增dba附加組

[root@dbaup ~]# idgrid

uid=1002(grid)gid=1003(grid) 組=1003(grid),1001(dba)

在視窗1重新登入gird使用者,檢視grid使用者已經有dba附加組了

[gird@dbaup ~]$ exit

logout

北京德勝門中醫院 北京治療精神分裂醫院

[root@dbaup bin]# su- grid

[grid@dbaup ~]$ id

uid=1002(grid)gid=1003(grid) 組=1003(grid),1001(dba)

--重新設定環境變數

[grid@dbaup ~]$export ORACLE_BASE=/u01/oracle

[grid@dbaup ~]$export ORACLE_HOME=$ORACLE_BASE/product/11.0.2.1

[grid@dbaup ~]$export ORACLE_SID=gbk11g

[grid@dbaup ~]$export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin

[grid@dbaup ~]$export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib

--登入作業系統驗證成功

[grid@dbaup ~]$sqlplus / as sysdba

SQL*Plus: Release11.2.0.1.0 Production on Tue Aug 20 21:42:36 2013

Copyright (c) 1982,2009, Oracle.  All rights reserved.

Connected to:

Oracle Database 11gEnterprise Edition Release 11.2.0.1.0 - 64bit Production

With thePartitioning, OLAP, Data Mining and Real Application Testing options

SQL>

為什麼會出現這種情況呢?

[root@dbaup ~]# find/ -group dba

/u01/oracle/product/11.0.2.1/dbaup_gbk11g/sysman/log

/u01/oracle/product/11.0.2.1/dbaup_ora11g/sysman/log

find:“/proc/20062/task/20062/fd/5”: 沒有那個檔案或目錄

find:“/proc/20062/task/20062/fdinfo/5”: 沒有那個檔案或目錄

find:“/proc/20062/fd/5”: 沒有那個檔案或目錄

find:“/proc/20062/fdinfo/5”: 沒有那個檔案或目錄

--發現/u01/oracle/product/11.0.2.1/dbaup_gbk11g/sysman/log所屬組是dba,並且other沒有任何許可權

[root@dbaup ~]# ls-l /u01/oracle/product/11.0.2.1/dbaup_gbk11g/sysman/log

總用量 5604

-rw-r-----. 1 oracleoinstall       0  6月  322:19 emagentfetchlet.log

-rw-r-----. 1 oracleoinstall       0  6月  322:19 emagentfetchlet.trc

-rw-r-----. 1 oracleoinstall     956  7月 29 17:04 emagent.log

-rw-r-----. 1 oracleoinstall   39430  7月 29 17:10 emagent_perl.trc

-rw-r-----. 1 oracleoinstall  757974  7月 29 18:49 emagent.trc

-rw-r-----. 1 oracleoinstall   11794  7月 29 18:49 emdb.nohup

-rw-r-----. 1 oracleoinstall       0  6月  322:18 emdctl.log

-rw-r-----. 1 oracleoinstall    3441  7月 29 17:04 emdctl.trc

-rw-r-----. 1 oracleoinstall 2443250  7月 29 18:49 emoms.log

-rw-r-----. 1 oracleoinstall 2443250  7月 29 18:49 emoms.trc

-rw-r-----. 1 oracleoinstall       0  6月  322:21 nfsPatchPlug.log

drwxr-----. 2 oracleoinstall    4096  6月  322:20 pafLogs

-rw-r-----. 1 oracleoinstall       0  6月  322:19 patchAgtStPlugin.log

-rw-r-----. 1 oracleoinstall    5279  6月  322:19 secure.log

[root@dbaup ~]# ls-ld /u01/oracle/product/11.0.2.1/dbaup_gbk11g/sysman/log

drwxr-x---.3 oracle dba 4096  7月 29 17:04/u01/oracle/product/11.0.2.1/dbaup_gbk11g/sysman/log

結論:oracle之外的使用者,在開啟了作業系統驗證的情況下,還需要加入dba組才能使用作業系統驗證

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7192724/viewspace-773441/,如需轉載,請註明出處,否則將追究法律責任。

相關文章