oracle12cweb登录,Oracle 12c中新建pdb用户登录问题分析

Oracle 12c新建用户登录问题分析

1 用sys用户新建用户,提示公用用户名或角色名无效。

原因:Oracle 12c中,在容器中建用户(或者应该称为使用者),须在用户名前加c##。默认登录连接的就是CDB。

查看当前是否处于容器CDB的方法:通过命令 show con_name; 如果结果为CDB&ROOT,则为容器状态。

想直接新建不带“c##”开头的用户的解决方法:切换pdb

具体先通过命令show pdbs;查看容器中数据库名称,选择需要连接的数据库(pdb),通过命令alter session set container=ORCLPDB(这个pdb名字根据自己实际情况而定);切换到需要连接的pdb。此时,新建用户即可成功,且用户名不需要以c##开头。

2 用sys登录SQLplus新建用户后,用新建的用户登录plsql程序,提示“ora-01017:用户名/口令无效;登录被拒绝。”

原因:数据库链接符不对

解决方法:在tnsnames.ora文件中新加一个连接符

原来的为

orcl=

(

(DESCRIPTION=

(ADDRESS=(PROTOCOL=TCP)(HOST=WIN-KD3MFTQMKPV)(PORT=1521))

(CONNECT_DATA=(SERVICE_NAME=ORCL))

)

在下面添加如下内容

orcl2=

(

(DESCRIPTION=

(ADDRESS=(PROTOCOL=TCP)(HOST=WIN-KD3MFTQMKPV)(PORT=1521))

(CONNECT_DATA=(SERVICE_NAME=ORCLPDB))

)

)

其中,HOST=WIN-KD3MFTQMKPV根据自己实际主机情况填写。

分析原因:因为12c是容器数据库结构,原来的ORCL服务连接符是针对CDB来的,切换到具体pdb之后,就需要新建一个服务连接符来对接。

验证;再次用新建的有权限的用户登录plsql程序,数据库选择orcl2,登录成功。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值