公司要升級到12c資料庫,于是我就先想著把用戶和表空間建立起來,之前一直用10g,11g建用戶件表空間,備份遷移資料都是輕車熟路,直到遇見了12c這個奇葩
首先12c底下用cdb建立c##開頭的通用用戶顯示成功,但是用conn 用戶名/密碼 嘗試連接就提示用戶名密碼錯誤,切到pdb里面建立用戶也是提示建立成功,但是連接的時候提示用戶名密碼錯誤........
既然cdb模式不行就換成nocdb的傳統模式,結果還是一樣的,我sysdba進去建立用戶,授權等等都成功了,結果切出去以后嘗試用新用戶連接依然提示用戶名密碼錯誤...........
實在是無語了,大神們知道怎么解決嗎???
uj5u.com熱心網友回復:
確認一下,用普通用戶連接時,是否是這個 12c服務器。uj5u.com熱心網友回復:
如果是以sqlplus / as sysdba模式進入的話,進去肯定是C##用戶的,需要切換到pdb,而且授權似乎也是要到pdb下面去授權的,cdb下授權貌似不行的吧。uj5u.com熱心網友回復:
就是alter到相應的pdb下面建立的用戶并授權的啊
uj5u.com熱心網友回復:
服務器上就只有一個資料庫不會錯的
uj5u.com熱心網友回復:
能否把你進入資料庫的SQL陳述句發一下,包括進入cdb,切換到pdb,以及登陸的SQL。uj5u.com熱心網友回復:
垃圾12c簡直反人類,破玩意不用了退回10g,oracle越做越垃圾今年把資料庫換成postgresql永遠告別Oracle這個天坑uj5u.com熱心網友回復:
12c新庫是這樣的 ,密碼認證規則變了, 改一下sqlnet向前兼容一下 :SQLNET.ALLOWED_LOGON_VERSION_SERVER=8
SQLNET.ALLOWED_LOGON_VERSION_CLIENT=8
然后修改一下用戶的密碼
就可以了 這個情況遇的多了
uj5u.com熱心網友回復:
也遇到過同樣問題,在oracle12c PDB容器新建用戶必須以C##開頭,但是使用新建的賬號密碼登陸確報用戶名密碼驗證失敗;初步的解決方法是修改C##username用戶名和密碼:select user#,name from user$;---查到到所需修改用戶名
update user$ set name='newusername' where user#=139;(目前必須改成大寫的用戶,否則登陸也會有問題,還不知道怎么解決)
commit;
強制重繪
ALTER SYSTEM CHECKPOINT;
ALTER SYSTEM FLUSH SHARED_POOL;
修改密碼,否則還是驗證失敗
ALTER USER 'username' identified by passwd;
Commit;
uj5u.com熱心網友回復:
12c c##用戶登錄uj5u.com熱心網友回復:
在cdb中只能創建全域用戶(c##開頭),會在cdb和所有的pdb中創建該用戶(但是pdb中的全域用戶需要另外授權才能夠在pdb中訪問)。在pdb中只能創建的用戶為本地用戶.
conn /as sysdba連接的是cdb
pdb用conn xxx/xxx@pdb名來連接。
http://docs.oracle.com/database/122/ADMIN/overview-of-managing-a-multitenant-environment.htm#ADMIN13507
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/28154.html
標籤:基礎和管理
上一篇:怎樣做職場規劃
下一篇:ORA-06502: PL/SQL: numeric or value error: character string buffer too small ORA
