1. 程式人生 > >oracle 12c 解決pdb中使用者無法登入問題的詳細步驟

oracle 12c 解決pdb中使用者無法登入問題的詳細步驟

oracle 12c 解決pdb中使用者無法登入的問題

oracle12c 有一個很大的變動就是引入了pdb可插入資料庫,而且在cdb中只能建立c##或者C##開頭的使用者,只有在pdb資料庫中才能建立我們習慣性命名的使用者,oracle稱之為Local User,前者稱之為Common User。在pdb中新建使用者,發現無法直接連線新使用者,下面是解決方案:

1.首先進入pdb

alter session set container=orcl;

show con_name;
2.建立新使用者,並賦權
create user scott identified by oracle;
grant connect,resource to scott;

3.直接連線新建使用者發現無法連線,

  直接登入是不可以的:
SQL> conn scott/oracle
ERROR:
ORA-01017: invalid username/password; logon denied

4.通過下面方式解決:
因為CDB和PDB的servicename可能是不一樣的,需要先查詢pdb的service_name 

SQL> select name,pdb from v$services;
NAME         PDB
-------------------- --------------------
orcl                    ORCL

vi tnsnames.ora  編輯tnsnames檔案,新增下面內容
ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)       把查詢到pdb對應的service_name寫到這裡


    )
  )

  必須要加上tnsnames的連線串才可以連線使用者:
 SQL> conn scott/[email protected]
Connected.
SQL> show user
USER is "SCOTT"

連線成功!

相關推薦

no