一. 問題描述
今天在新機子(WINDOWS)上搭建Oracle環境,完了之后通過SQL*PLUS本地登錄時報錯:
ora-01031 insufficient privileges ——-權限不足
二. 解決過程
錯誤排除
1. 當時首先想到的是oracle不允許用sqlplus工具登錄,但隨即想法打消
sqlplus sys/admin as sysdba --成功登錄!
2. 帶詳細信息指定本機IP和實例登錄
sqlplus sys/admin@127.0.0.1:1521/ORCL as sysdba --成功登錄!
3. 用PLSQL developer登錄也成功
猜測:以上幾種登錄方式均屬於Oracle密碼登錄方式,而 / as sysdba是以操作系統方式登錄到Oracle的
錯誤定位
用操作系統本地登錄時出現錯誤,極有可能是因為當前windows用戶不在Oracle准許登錄的用戶組內。
解決辦法
1. 用命令打開windows用戶組管理,把安裝Oracle的用戶添加到ORA_DBA用戶組里(Liunx系統此用戶組名稱不一樣)
compmgmt.msc
2. 打開$ORACLE_HOME/NETWORK/ADMIN/sqlnet.ora
確保SQLNET.AUTHENTICATION_SERVICES= (NTS) -- 允許本地登錄
3. 重啟電腦(為了更新並應用剛修改的用戶組)
4. 測試
C:\Users\Jan>sqlplus / as sysdba
SQL*Plus: Release 11.2.0.1.0 Production on Mon Dec 14 22:12:29 2015
Copyright (c) 1982, 2010, Oracle. All rights reserved.
Connected.
三. 結果總結
利用 sqlplus / as sysdba 本機登錄必備兩個條件
1. 當前用戶在Oracle dba的用戶群組內
2. sqlnet.ora文件參數 SQLNET.AUTHENTICATION_SERVICES= (NTS)
---------------------
作者:Jan丶X
來源:CSDN
原文:https://blog.csdn.net/yongjian1092/article/details/50301625
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!