Oracle數據庫shutdown報ORA-01031: insufficient privileg

下午一位壓測的同事找到我說一套壓測的庫連接報錯,報錯如下圖:

1.png

要來ip和實例名登到服務器上看pmon進程還在

ps -ef |grep pmon

查看監聽情況也是正常的

lsnrctl status 

這兩項都沒問題,嘗試登錄數據庫,如下圖:

2.png

熟悉Oracle的同學一看這個提示信息應該就能感覺到不對,不是正常庫連接的提示信息

查詢數據庫狀態,語句執行報錯如下

image.png

語句無法執行,然後轉站去看alert日誌

image.png

一直在報類似此種的信息,沒有找到有效的信息,順着日誌往前找到一個關鍵點,16:01:45曾嘗試shutdown數據庫

image.png

繼續跟壓測同事溝通,他們嘗試下午重啓數據庫但報權限不足。

感覺很奇怪,shutdown庫怎麼會沒有權限。

我也進行嘗試,shutdown immediate無法執行,shutdown abort也報權限不足

image.png

這個問題確定很奇怪,我是用sqlplus / as sysdba登錄的數據庫,怎麼會沒有權限,繼續往下查

查看用戶權限

image.png

這臺服務器上裝的是單實例,卻有grid用戶,感覺還是挺怪的。

從上面的輸出來看oracle用戶的權限和所屬組是沒有問題的

image.png

查看oracle文件的權限也沒有問題

至此找不到什麼問題了,於是轉站MOS,去查是否有相關文檔

找到一篇ORA-1031 While Starting An Instance As SYSDBA immediately After Applying A Patch (文檔 ID 1475357.1)但與這邊遇到的問題不太一致,文檔的最後有一篇參考文檔ORA-01031 DOING DATABASE STARTUP OR SHUTDOWN (文檔 ID 1008507.6)

裏面提到了TWO_TASK這個環境變量,以前數據庫出問題也跟這個變量有關,於是查看環境變量沒有配置這個變量

順着這個思路我查看了整個oracle用戶的環境變量找到了問題所在

3.png

原來oracle用戶中的PATH路徑配置了/u01/app/11.2.0/grid/bin這個路徑,權限不對

於是把.bash_profile中的PATH進行修改

重新登錄oracle用戶

4.png

再次sqlplus / as sysdba登錄數據庫,重啓,問題解決


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章