前言
莫名其妙的在使用jdbc 連接oracle 數據庫時,使用system 登錄數據庫沒有任何異常,一旦使用sys用戶登錄就會連接異常,在此記錄一下異常內容以及異常處理方式。
異常
Exception in thread "main" java.sql.SQLException: ORA-28009: connection as SYS should be as SYSDBA or SYSOPER
這個異常也很容易理解,sys 應該時使用 sysDBA 或者 sysOper方式連接。
解決
jdbc標準中沒有提供這個連接選項,所以就只能在官方網站上查詢解決辦法。
解決方法也比較簡單,就是將登錄的用戶sys 改爲 sys as sysdba.
datasource:
username: sys as sysdba
Navicat 使用 sys 連接
在連接配置的界面中,選擇高級選項卡,當中的角色,選擇爲SYSDBA 即可正常連接。