Oracle-修改用户名

1、项目背景

 需要将导入一份最新的用户数据在tbl用户上,但需要将原来的tbl用户数据保留并能实现两个用户的比对。


2、解决思路

  思路一:1)新建用户tbl_feng,导入数据;2)将两个用户换名称 3)比对

  思路二:1)将旧用户tbl换用户名为tbl_feng;2)新建tbl用户,导入新数据 3)比对 

       以上方案中都需要保留旧用户上的数据,并将旧用户修改用户名。因此,下面主要说明 将tbl用户改名为 tbl_feng 的过程。


3、修改步骤

1) 查询待更改Oracle用户 的信息 USER#

SYS@orcl> select user#,name from user$ where name='NH_DW_TBL';

USER#       NAME
----------------------------------------------------------------------------------------------                               149             NH_DW_TBL

查询结果: 

2)更改用户名 为“tbl_feng”

SYS@orcl> update user$ set name='NH_DW_TBL_FENG' WHERE USER#=149;

1 row updated.

执行截图: 

3)清除缓存数据字典信息 (强制checkpoint、flush shared_pool)

此时,如果不做操作,是不可以创建 tbl用户的,会提示重名,需要执行:强制将更改写入文件,清除缓存中数据字典信息,下次读取时从文件中读取已更改的信息。

alter system checkpoint;
alter system flush shared_pool;

4) 创建新用户即可

create user NH_DW_TBL identified by XXX
  default tablespace NH_DW_TBL_DATA
  temporary tablespace TEMP
  profile DEFAULT; 

 5)检查结果 ok换用户名成功。

SYS@orcl> SELECT USER#,NAME FROM USER$ WHERE NAME LIKE 'NH_DW_TBL%';

USER# NAME
----- ------------------------------
  149 NH_DW_TBL_FENG
  208 NH_DW_TBL

或者登录上PL/SQL Developer工具,查看用户:

检查连接:ok

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值