Oracle11g 添加用户并赋权限

添加/用户

create user #username# identified by #password#; 

drop user #username# cascade;

alter user #username# identified by #newpassword#;

连接时用户民不区分大小写  

alter system set sec_case_sensitive_logon=false scope=both;  

grant create session,resource to #username#;  

alter user #username# account unlock;  

grant create view to #username#;  

grant any sequece to #username#;  

grant create synonym to #username#;--创建别名的权限 

给用户添加DBA权限

grant dba to  #username#

权限

数据库中执行某种操作的权力,是预先定义好的,执行某种SQL语句或访问其他用户模式对象的能力。  创建一个用户,表示该用户具有了连接和操作数据库的资格,但是要对数据库进行实际操作,则该用户还需要具有相应的操作权限。 

权限的分类(按照系统管理方式的不同,权限分为两类:系统权限和对象权限)  

系统权限: 在系统级控制数据库的存取和使用机制。系统级控制决定是否可以连接到数据库,在数据库中可以进行哪些操作等。  

如:创建会话,创建表,创建视图和创建用户等。DBA在创建一个用户时,可以将其中的一些权限授予用户。系统权限是针对用户来设置的,用户必须被授予相应的系统权限,才可以连接到数据库中进行相应的操作。  

在Oracle数据库中,用户system和sys 都是数据库管理员,具有DBA所有系统权限,包括select any dictionary权限。所以system和sys可以查询数据字典中以DBA_开头的数据字典。

系统权限部分如下:  

    create session 连接数据库  

    create tablespace 创建表空间  

    alter tablespace 修改表空间  

    drop tablespace 删除表空间  

    create user 创建用户  

    drop user   删除用户  

    create table 创建表  

    create any table 在任何用户模式中创建表  

    drop any table  删除任何用户模式中的表 

    alter any table 修改任何用户模式中的表  

    select any table 查询任何用户模式中的基本表记录  

    insert any table 向任何用户模式中的表插入记录  

    update any table 修改任何用户模式中的表  

    delete any table 删除任何用户模式中表  

  

    create view 创建视图  

    create any view 在任何用户模式中创建视图  

    drop any view 删除任何用户模式中的视图  

      

    create role 创建角色  

    alterany role 修改任何角色  

    grant any role 将任何角色授予其他用户  

  

    alter database 修改数据库结构  

    create procedure 创建存储过程  

    create any procedure 在任何用户模式中创建存储过程  

    alter any procedure  修改任何用户模式中的存储过程  

    drop any procedure 删除任何用户模式中的存储过程  

  

    create profile  创建配置文件  

    alter profile 修改该配置文件  

    drop profile 删除配置文件  

向用户授予系统权限(使用grant语句)  

    grant system_privilege [,...] to  

    {user_name [,...]|role_name [,...]|public}  

    [with admin option];  

    1> system_privilege表示系统权限,如create table。中间用逗号分开  

    2> user_name 被授予权限的用户,可以是多个用户;  

    3> role_name 也可以将系统权限授予某些角色  

    4> public 表示Oracle系统所有用户  

    5> with admin option 如果指定,则被授予权限的用户可以将该权限再授予其他用户。  

查询用户所具有的系统权限  

    可以通过视图user_sys_privs来了解

    1> username 当前用户的用户名  

    2> privilege 当前也难怪乎拥有的系统权限  

    3> admin_option 当前用户是否有权力将该权限授予其他用户。  

猜你喜欢

转载自ihuning.iteye.com/blog/2182775