系统权限: 在系统级控制数据库的存取和使用机制。系统级控制决定是否可以连接到数据库,在数据库中可以进行哪些操作等。 如:创建会话,创建表,创建视图和创建用户等。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 删除配置文件
b. 向用户授予系统权限(使用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 如果指定,则被授予权限的用户可以将该权限再授予其他用户。