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

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

1.png

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

ps -ef |grep pmonbash

查看監聽狀況也是正常的服務器

lsnrctl status oracle

這兩項都沒問題,嘗試登陸數據庫,以下圖:app

2.png

熟悉Oracle的同窗一看這個提示信息應該就能感受到不對,不是正常庫鏈接的提示信息ide

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

image.png

語句沒法執行,而後轉站去看alert日誌3d

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登陸數據庫,重啓,問題解決

相關文章
相關標籤/搜索