Oracle 中如何更改用户名

实际工作中,有时候需要修改用户名,而通常的做法是exp imp这样的方式,而如果数据量大的话exp imp的方式会很浪费时间,所以下面写上如何通

实际工作中,,有时候需要修改用户名,而通常的做法是exp imp这样的方式,而如果数据量大的话exp imp的方式会很浪费时间,所以下面写上如何通过修改Oracle基表的方式来修改用户名。

— 直接修改底层表USER$更改用户名(该方法在Oracle9i中测试通过)

SQL> UPDATE USER$ SET WHERE USER#=91;

已更新 1 行。

SQL> COMMIT;

提交完成。

SQL> ALTER SYSTEM CHECKPOINT;

系统已更改。

SQL> ALTER USER TT IDENTIFIED BY VALUES ‘294CE6E7131DD890’;

ALTER USER TT IDENTIFIED BY VALUES ‘294CE6E7131DD890’

*

ERROR 位于第 1 行:

ORA-01918: 用户’TT’不存在

  强制 Oracle 读取实际数据,而不是读取缓存

SQL> ALTER SYSTEM FLUSH SHARED_POOL;

系统已更改。

SQL> ALTER USER TT IDENTIFIED BY VALUES ‘294CE6E7131DD890’;

用户已更改。

  测试连接

SQL> CONN TT/TT

已连接。

SQL> SELECT * FROM TAB;

TNAME TABTYPE CLUSTERID

—————————— ——- ———-

TEST_TT TABLE

SQL> CONN / AS SYSDBA

已连接。

SQL> SHOW USER

USER 为”SYS”

SQL> SHUTDOWN IMMEDIATE

%ignore_a_1%已经关闭。

已经卸载数据库。

ORACLE 例程已经关闭。

SQL> STARTUP

ORACLE 例程已经启动。

……

数据库装载完毕。

数据库已经打开。

  可以看出没有再恢复为TEST

SQL> SELECT USER#,NAME,PASSWORD FROM USER$ WHERE USER#=91;

USER# NAME PASSWORD

———- —————————— —————-

91 TT 294CE6E7131DD890

SQL> CONN TT/TT

已连接。

  查看数据对象

SQL> SELECT * FROM TAB;

TNAME TABTYPE CLUSTERID

—————————— ——- ———-

TEST_TT TABLE

SQL> SELECT * FROM TEST_TT;

A

A

  对象权限依然有效

SQL> SELECT * FROM TEST1.TEST1_TT;

A

A

  系统权限依然有效

SQL> CREATE TABLE KK AS SELECT * FROM TEST1.TEST1_TT;

表已创建。

SQL> SELECT * FROM TAB;

TNAME TABTYPE CLUSTERID

—————————— ——- ———-

KK TABLE

TEST_TT TABLE

SQL> CONN / AS SYSDBA

已连接。

SQL> SHOW USER

USER 为”SYS”

–DROP USER 也没有问题

SQL> DROP USER TT CASCADE;

用户已丢弃

SQL> DROP USER TEST1 CASCADE;

用户已丢弃

linux

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/1967290.html

(0)
上一篇 2025年2月23日 07:08:44
下一篇 2025年2月23日 07:09:13

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 小白学Oracle第二关之第一个oracle数据库表的创建

    现如今在实际工作中,在数据库中创建表是经常会用到的。本文中小编主要给大家来分享一下在数据库如何通过sql语句去创建表。首先,先使用plsql连接到oracle数据库,先保证下面的服务是开启的。   我们本次创建表的需求是:创建一张班级表,和…

    2025年2月23日 数据库
    100
  • 数据库种类

    什么是数据库? 简单的说,数据库(英文Database)就是一个存放数据的仓库,这个仓库是按照一定的数据结果(数据结构是指数据的组织形式或数据之间的联系)来组织、存储的、我们可以通过数据库提供的多种方法来管理数据库里的数据更简单的形象理解,…

    2025年2月23日
    100
  • 常用的关系型数据库有哪些?

    关系数据库,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。现实世界中的各种实体以及实体之间的各种联系均用关系模型来表示。标准数据查询语言sql就是一种基于关系数据库的语言,这种语言执行对关系数据库中数据…

    2025年2月23日
    100
  • 数据库的事务隔离级别有哪些?

    在数据库操作中,为了有效保证并发读取数据的正确性,提出的事务隔离级别。在标准sql规范中,定义了4个事务隔离级别,不同的隔离级别对事务的处理不同。下面本篇文章就来给大家介绍一下事务隔离级别,希望对你们有所帮助。 一般的数据库,包括四种隔离级…

    2025年2月23日
    100
  • 数据库备份的两种方法是什么

    数据库备份的两种方法是:1、使用mysqldump结合exec函数进行数据库备份;2、使用【php+mysql+header】函数进行数据库备份。 数据库备份是必要的一般都是使用mysqldump进行备份,我这边写了两种备份方法可以参考一下…

    2025年2月23日
    100
  • 浅谈数据库的存储过程

    什么是存储过程       如果你接触过其他的编程语言,那么就好理解了,存储过程就像是方法一样。   竟然他是方法那么他就有类似的方法名,方法要传递的变量和返回结果,所以存储过程有存储过程名有存储过程参数也有返回值。    存储过程的优点:…

    2025年2月23日
    100
  • 数据库添加语句是什么

    数据库添加语句是insert into语句。 INSERT INTO 语句用于向表中插入新记录。 SQL INSERT INTO 语法 INSERT INTO 语句可以有两种编写形式。 第一种形式无需指定要插入数据的列名,只需提供被插入的值…

    2025年2月23日
    100
  • 数据库设计过程不包括什么

    数据库设计过程不包括算法设计。 数据库设计过程主要包括需求分析、概念结构设计、逻辑结构分析、数据库物理设计、数据库实施、数据库运行和维护阶段。 数据库设计 数据库设计(Database Design)是指对于一个给定的应用环境,构造最优的数…

    2025年2月23日
    100
  • sql指的是什么

    推荐教程:sql教程 简介   SQL (Structured Query Language) 是具有数据操纵和数据定义等多种功能的数据库语言,这种语言具有交互性特点,能为用户提供极大的便利,数据库管理系统应充分利用SQL语言提高计算机应用…

    2025年2月23日
    100
  • 数据库的并发操作可能带来的问题有哪些

    推荐教程:sql教程 什么是数据库并发操作   数据库是一个共享资源,可以提供多个用户使用。这些用户程序可以一个一个地串行执行,每个时刻只有一个用户程序运行,执行对数据库的存取,其他用户程序必须等到这个用户程序结束以后方能对数据库存取。但是…

    2025年2月23日
    100

发表回复

登录后才能评论