oracle12创建用户错误ORA-65096: 公用用户名或角色名无效

创建命令:

create user newuser identified by newuser;

报错:ORA-65096: invalid common user or role name(公用用户名或角色名无效).

错误原因:

用户想在PDBORCL中创建newuser用户,却未设置会话container到PDB,而在CDB中创建公有用户因无法通过名称或角色验证出错.

1.解决方案一

a.创建用户的时候用户名以c##或者C##开头

命令:create user c##newuser identified by newuser;(此时创建的用户名称在表user$中为: ##newuser),不是我们需要的newuser;

b.在表user$中查找新建的表对应的user#;
命令:select * from user$ t where t.name like ‘%newuser%‘;取出user#的值,这里假设为108;

c.手动将用户名称##newuser修改为newuser;

命令:update user$ set name=‘newuser‘ where user#=108;     commit;

d.强制刷新

alter system checkpoint;

alter system flush shared_pool;

d.重新设置密码newuser

alter user newuser identified by newuser;

2.解决方案二(http://blog.itpub.net/29357786/viewspace-1995055/),摘抄如下:

ORA65096的相关处理流程如下:

1、查看数据库CDB名

select name,cdb from v$database;

2、查看数据库PDB名

col pdb_name for a30
select pdb_id,pdb_name,dbid,status,creation_scn from dba_pdbs;
select con_id,dbid,NAME,OPEN_MODE from v$pdbs;


3、设置会话PDB指定的容器库

alter session set container=pdborcl;

4、创建PDBORCL库用户

--注意需要先确定数据库中有users表空间、temp临时表空间

create user ajao identified by ajao default tablespace users temporary tablespace temp;

5、授权

grant create user,drop user,alter user,create any view,connect,resource,dba,create session,create any sequence to AJAO;

至此,ORACLE 12C PDB的PDBORCL中创建AJAO用户完成!

原文地址:https://www.cnblogs.com/zhaozhg/p/10442925.html

时间: 2024-07-29 22:52:02

oracle12创建用户错误ORA-65096: 公用用户名或角色名无效的相关文章

Oracle 12C ORA-65096: 公用用户名或角色名无效

先说基本用法: 先按11G之前进行 conn / as sysdba; create user test identifed by test; ORA-65096: 公用用户名或角色名无效. 查官方文档得知"试图创建一个通用用户,必需要用C##或者c##开头",这时候心里会有疑问,什么是common user?不管先建成功了再说 create C##user test identifed by test; 创建成功 SQL>show con_name; CON_NAME ----

oracle12c创建用户提示ORA-65096:公用用户名或角色无效

1.背景 以前一直用的是oracle11g,创建用户一直没有问题, 今天在oracle12c上创建用户,报错了.如下图: 我很郁闷, 就打开了oracle官方网站找了下, 发现创建用户是有限制的. 2.解决方案 创建用户的时候用户名以c##或者C##开头即可. 错误写法: create user zhaojiedi identified by oracle; 正确写法: create user c##zhaojiedi identified by oracle; 注: 如果你不纠结为啥的,上面的

分享知识-快乐自己:oracle12c创建用户提示ORA-65096:公用用户名或角色无效

今天在oracle12c上创建用户,报错了.如下图: 我很郁闷, 就打开了oracle官方网站找了下, 发现创建用户是有限制的. 2.解决方案 创建用户的时候用户名以c##或者C##开头即可. 错误写法: create user zhaojiedi identified by oracle; 正确写法: create user c##zhaojiedi identified by oracle; 注: 如果你不纠结为啥的,上面的解决方案就可以满足你的要求了,下面的内容可以不用看了. ======

oracle12c创建用户等问题

一:前言 这几天我重新装了下电脑,然后自己有试着去装了下oracle11g,结果还是失败了然后我自己又去下载了最新的oracle12c,oracle12c中有两个用户sys和system,scott已经没有了,所以我自己就想创建一个自己的用户. 二:问题 我自己试了好多次都是报错“ORA-65096: 公用用户名或角色名无效”,最后百度才知道,写法是这样"create user c##xxx identified by xxx";因为现在创建的是cbd下的用户,cbd全称Contain

批量创建用户和删除用户

批量创建用户 read -p "请输入用户名的前缀:" userread -p "请输入用户的数目:" numcount=0if (($num>10))then        echo "最多只能同时新建10个用户"else        for i in $(seq $num)        do                if useradd $user$i                then                  

创建用户时出现如下错误[[email protected] ~]# useradd alix useradd: user 'alix' already exists

原因 之前存在ID 名字相同的用户,用userdel删除后 家目录和邮件没有删除 解决方法: 1.删除之前存的目录和邮件 [[email protected] ~]# rm -rf alix [[email protected] ~]# rm -f/var/spool/mail/alix 2.现在重新创建 useradd alix 创建用户时出现如下错误[[email protected] ~]# useradd alix useradd: user 'alix' already exists

ORCALE 创建用户 ORA-65096 错误解决

当使用之前版本的sql语法在12c中建立user时,若时使用pluggable database,会ORA-65096抛出异常. 执行命令: select pdb_id,pdb_name,dbid,status,creation_scn from dba_pdbs; 执行命令 alter session set container=ORCLPDB; 再创建用户 create user test identified by test; 原文地址:https://www.cnblogs.com/yg

oracle的dmp数据文件的导出和导入以及创建用户

关于dmp文件我们用的还是比较多的,dmp文件它是作为oracle导入和导出表使用的文件格式,今天就将dmp文件导出和导入进行学习. dmp文件导出 dmp文件导出用的比较多的一般是三种,他们分别是:导出整个数据库实例下的所有数据.导出指定用户的所有表.导出指定表. 这里已我的数据库为例,进行介绍,我的Oracle数据库实例为"ORACLE",查看自己数据库实例可以从"任务管理器-->服务"中进行查看,如下图 打开命令行: 1,将数据库ORACLE完全导出,用

ajax讲解:“创建用户”和“用户登录”练习

ajax可以在不重新加载整个网页的情况下,对网页的某部分进行更新. 传统的网页(不使用 AJAX)如果需要更新内容,必须重载整个网页页面. 接下来,将以例子的形式进行讲解 例一:创建用户 在不刷新的情况下,当创建的用户已经有了,就会在后面显示:该用户名已经存在: 当创建的用户不存在,就会在后面显示:该用户名可以使用: <body> <div> 创建用户名:<input type="text" id="uid"/> <span