美文网首页
Oracle用户与权限

Oracle用户与权限

作者: 天下无敌强 | 来源:发表于2017-04-30 11:56 被阅读0次

Oracle数据库下用户操作

新增用户

前置条件

  • 首先登陆到系统用户sys(sys用户具有创建用户的权限)。
  • 然后在SQL语句输入框写入创建用户的代码。

语法

  • CREATE USER user_name IDENTIFIED BY password
  • [ACCOUNT LOCK|UNLOCK]   lock:给用户上锁;unlock:解锁用户。(和connnect角色无关)
  • [DEFAULT TABLESPACE default_tablespace]  default_tablespace:用户的默认表空间,用于储存数据库对象。如果忽略此参数,则默认存储到SYSTEM表空间
  • [TEMPORARY TABLESPACE temporary_tablespace];  temporary_tablespace:是临时对象默认存储的表空间,包括临时表。如果忽略此参数,则默认存储到SYSTEM表空间

示例

CREATE USER student IDENTIFIED BY 123456;创建了一个student用户,登陆密码为123456.

查看用户

查看拥有DBA权限的用户

select username,user_id,password,default_tablespace from dba_users;

查看当前登录用户

select * from user_role_privs;

通过角色控制用户权限

  • Connect 临时会话角色,对于那些不需要建表的用户,通常只赋予他们CONNECT角色,拥有CONNECT角色可以与服务器建立连接会话。
  • Resource 更可靠的和正式的用户可以授予RESOURCE角色.RESOURCE角色提供给用户创建表,序列,过程(procedure),触发器(tigger),索引(index)等。
  • DBA 所有的系统权限,用户system和sys拥有DBA角色。

说明:
Scott拥有connect和Resource两个角色,可以应对大部分的开发场景;
Grant connect/resource/dba to Scott;

给用户分配权限

  • 如果想让用户在数据库里完成一些任务,需要相应的给用户授予权限。如:如果想让用户连接到数据库,必须授予用户CREATE SESSION的系统权限。
  • 授权必须通过一些特殊用户授权(例如SYSTEM),通过GRANT语句来完成。下表列出了用户可能用到的权限。

语法

  • GRANT CREATE SESSION TO student;
  • 给用户student分配连接的权限。

权限列表

  • CREATE SESSION(连接到数据库)
  • CREATE SEQUENCE
  • CREATE SYNONYM
  • CREATE TABLE(在用户架构中创建表)
  • CREATE ANY TABLE(在任意架构中创建表)
  • DROP TABLE
  • DROP ANY TABLE
  • CREATE PROCEDURE(创建存储过程)
  • EXECUTE ANY PROCEDURE
  • CREATE USER
  • DROP USER
  • CREATE VIEW

撤销用户权限

REVOKE CONNECT FROM Scott;

相关文章

网友评论

      本文标题:Oracle用户与权限

      本文链接:https://www.haomeiwen.com/subject/cbxxtxtx.html