• Oracle用户详细操作


    1、sqlplus 登入 dba 账号
    sqlplus / as sysdba;
    sqlplus dw/dw@127.0.0.1:1521/orcl
    
    • 1
    • 2
    2、用户操作
    2.1、创建用户
    create user c##zhang identified by zhang;--12C以后
    -------------------------------------------------
    create user bqsj identified by bqsj --密码
    default tablespace NNC_DATA01 --指定表空间
    temporary tablespace TEMP --指定临时表空间
    profile default
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    2.2、用户授权

    权限大概分三种 (connect 连接, resource 数据,dba 管理员)

    授予连接权限和数据权限的语句,完成这一步,我们就可以用客户端连接改用户了

    grant connect to test1;--连接权限
    grant resource to test1;--数据权限
    grant dba to test1;--DBA权限
    grant unlimited tablespace to test1;--全局表空间权限
    -------------------------------------------------
    grant connect, resource, dba to test1;
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    2.3、修改用户密码

    将 test1 账号的 密码修改为 test2

    alter user test1 identified by test2; 
    
    • 1
    2.4、设置密码不过期
    alter profile default limit password_life_time unlimited;
    
    • 1
    2.5、修改用户对应的表空间
    alter user test1 default tablespace ZHANGTEST01;
    
    • 1
    2.6、授予用户操作表空间的权限
    alter user test1 quota unlimited on ZHANGTEST01;
    
    • 1
    2.7、删除用户
    drop user test1;          -- 普通账号
    drop user test1 cascade;  -- 带数据权限的
    
    • 1
    • 2
    3、用户查询
    1、关于用户的查询
    select * from dba_users;       -- 查询数据库中拥有DBA权限的所有用户(需要 dba 权限)
    select * from all_users;       -- 查询数据库下的所有用户(相对于上一条,查询结果字段比较少)
    select * from user_users;      -- 查询当前用户的相关信息
    select userenv ('language') from dual;  -- 查询字符集
    
    • 1
    • 2
    • 3
    • 4
    2、关于用户下的表的查询
    select * from user_tables;     -- 查询当前用户下的所有表
    select * from user_sequences;  -- 查询当前用户下的所有序列
    select t.name from user_source t where t.type = 'TRIGGER' group by t.name; -- 查询当前用户下所有触发器
    
    • 1
    • 2
    • 3
    3、查看用户或角色系统权限

    直接赋值给用户或角色的系统权限

    select * from dba_sys_privs;
    select * from user_sys_privs;--查看当前用户所拥有的权限
    
    • 1
    • 2
    4、查看角色

    只能查看登陆用户拥有的角色所包含的权限

    select * from role_sys_privs;
    
    • 1
    5、查看用户对象权限
    select * from dba_tab_privs;   
    select * from all_tab_privs;   
    select * from user_tab_privs;
    
    • 1
    • 2
    • 3
    6、查看所有角色
    select * from dba_roles;
    
    • 1
    7、查看用户或角色所拥有的角色
    select * from dba_role_privs;   
    select * from user_role_privs;
    
    • 1
    • 2
    8、查看哪些用户有sysdba或sysoper系统权限

    查询时需要相应权限

    select * from V$PWFILE_USERS;
    
    • 1
    9、SqlPlus中查看一个用户所拥有权限
    select * from dba_sys_privs where grantee='username';
    
    • 1
    10、Oracle删除指定用户所有表的方法
    select 'Drop table '||table_name||';' from all_tables
    where owner='要删除的用户名(注意要大写)';
    
    • 1
    • 2
    11、获取当前用户下所有的表
    select table_name from user_tables;
    
    • 1
    12、删除某用户下所有的表数据
    select 'truncate table  ' || table_name from user_tables;
    
    • 1
  • 相关阅读:
    Llama2-Chinese项目:4-量化模型
    文字与视频结合效果
    Cadence23学习笔记(三)
    【牛客-剑指offer-数据结构篇】【图解】JZ18 删除链表的节点 Java实现
    TiDB Lightning Web 界面
    ES6 入门教程 10 对象的扩展 10.6 对象的扩展运算符
    SpringBoot2 常用注解
    ES6中的默认参数
    IDEA工具第一篇:细节使用-习惯设置
    如何阅读外文文献?文献阅读七步法
  • 原文地址:https://blog.csdn.net/weixin_35353187/article/details/128123474