如何用oracle 数据库 19c 解锁scott用户
**
在oracl数据库里面 的示例用户scott 在oracl数据库11之后就找不到了??
注意我们在操作的时候登录sql plus 我们用的都是超级管理员登录 sys as sysdba; ** 原因是因为 oracle 数据库 11 之后的数据库把 用户分为了两个数据库 一个是CDB(公共用户) 和PDB(本地用户也可以叫可插拔数据库)
我们用system 登录的时候默认登陆的是CDB$ROOT 可以用代码查看自己登录的是什么用户
查看自己登录用的是什么用户;
show con_name;
在CDB中创建 的用户就属于公共用户; 如果想要在公共用户中创建用户就必须在用户前面加上”C##“
orcla之前版本中存在的示例用户scott在oracle 12C以后的版本中无法查到的原因:就是因为scott实际上存放到oracle 12C里面自带的PDB中;
我们通过代码可以直接连接PDB
连接数据库里面的PDB; alter session set container=pdb1;
我这里写的pdb1是我的可插入数据库名字,这个是自己在创建的时候自己设置的 你们的应该和我的不同 如果不知道自己创建的可插入数据库名字,可以在 C:apporacleproduct12.1.0dbhome_1BINdbca.bat中查看
这里我们就可以看到我们的可插入数据库名字==注意这里不能点下一步不然会把自己数据库删掉== 连接了可插入数据库了我们还需要打开才可以使用
打开数据库 startup;
这样我们就完成了一半;
我们使用代码查看当前的用户是谁
查看当前用户 show user;
这里一般会显示SYS; 如果显示的为 “ ”; 不要慌小问题; 我们只需要登录一下超级管理员用户就可以
conn sys/123456@localhost:1521/pdb1 as sysdba; 显示的应该是: 已连接 我们在查看一下当前用户 show user; 这里会显示 “SYS”
代码解析阶段: conn sys/123456@localhost:1521/pdb1 as sysdba; conn 用户名/口令(密码)@localhost:1521/可插入数据库名 as sysdba; @localhost:1521 这么应该都是不会变的大家和我写一样的就行; 里面的pdb1是我们自己创建的可插入数据库名
我们这里就可以解锁scott用户了 输入代码
alter user scott account unlock; 这里不出意外你们都会提示用户 scott 不存在,如果执行成功你们就执行第二条代码吧 alter user scott identified by 123456;
如果提示代码不存在也不要慌我们慢慢来; 注意注意注意 这里向你们传授一个快速的方法 我们先找到Scott.sql; D:orcalWINDOWS.X64_193000_db_home dbmsadmin 我们用记事本代开 把这里的CONNECT SCOTT/TIGER; 修改为 CONNECT SCOTT/123456@localhost:1521/pdb1; 然后保存 我们执行代码 这个文件夹路径
导入scott.sql包 @D:orcalWINDOWS.X64_193000_db_home dbmsadminscott.sql;
然后登录到超级管理员PDB里面
登录超级管理员 conn sys/123456@localhost:1521/pdb1 as sysdba;
这里我们就可以解锁scott了
解锁scott用户: alter user scott account unlock; 更改scott密码: alter user scott identified by 123456;
现在我们就可以登录Scott用户了
conn scott/123456@localhost:1521/pdb1 ;
登录之后我们就可以查询验证一下
select * from emp;
