orcl创建用户赋予权限
一、系统权限分类:
DBA: 拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构。
RESOURCE:拥有Resource权限的用户只可以创建实体,不可以创建数据库结构。
CONNECT:拥有Connect权限的用户只可以登录Oracle,不可以创建实体,不可以创建数据库结构。
对于普通用户:授予connect, resource权限。
对于DBA管理用户:授予connect,resource, dba权限。
二、系统特权管理与控制
ORACLE 提供了80多种系统特权,其中每一个系统特权允许用户执行一个或一类数据库操作。
1、授予系统特权
(1) SQL> grant connect, resource, dba to 用户名1 [,用户名2]...;
(2)
SQL>GRANT CREATE USER,ALTER USER,DROP USER
>TO
jxzy_new
>WITH ADMIN OPTION;
2、回收系统特权
SQL>REVOKE
CREATE USER,ALTER USER,DROP USER
>FROM
jxzy_new
//但没有级联回收功能
3、显示已被授予的系统特权(某用户的系统级特权)
SQL>select *
fromsys.dba_sys_privs
SQL> select * from role_sys_privs;
4、删除用户:SQL> drop user 用户名 cascade;
//加上cascade则将用户连同其创建的东西全部删除
5、将表的操作权限授予全体用户:
SQL> grant all on product to
public;// public表示是所有的用户,这里的all权限不包括drop。
[ 实体权限数据字典]:
SQL> select owner, table_name from
all_tables; // 用户可以查询的表
SQL> select table_name from
user_tables;// 用户创建的表
SQL> select grantor,
table_schema, table_name, privilege from all_tab_privs; //
获权可以存取的表(被授权的)
SQL> select grantee, owner, table_name, privilege
from user_tab_privs;// 授出权限的表(授出的权限)
6、 DBA用户可以操作全体用户的任意基表(无需授权,包括删除):
DBA用户:
SQL> Create
table stud02.product(
id number(10),
name
varchar2(20));
SQL> drop table stud02.emp;
SQL> create table stud02.employee
as
select * from scott.emp;
三、修改用户:
1、修改口令字:
SQL>Alter user acc01 identified by "12345";
2、修改用户缺省表空间:
SQL> Alter user acc01 default tablespace users;
3、修改用户临时表空间
SQL> Alter user acc01 temporary tablespace
temp_data;
4、强制用户修改口令字:
SQL> Alter user acc01 password expire;
5、将用户加锁
SQL> Alter user acc01 account lock;// 加锁
SQL>
Alter user acc01 account unlock;// 解锁
四、删除用户
SQL>drop user 用户名;//用户没有建任何实体
SQL> drop user 用户名
CASCADE;// 将用户及其所建实体全部删除
*1. 当前正连接的用户不得删除。
五、监视用户:
1、查询用户会话信息:
SQL> select username, sid, serial#,
machine from v$session;
2、删除用户会话信息:
SQL> Alter system kill session 'sid, serial#';
3、查询用户SQL语句:
SQL> select user_name, sql_text from
v$open_cursor;
SQL> ALTER SESSION SET
NLS_LANGUAGE= 'SIMPLIFIED
CHINESE'
NLS_TERRITORY= 'CHINA'
NLS_CURRENCY=
'RMB'
NLS_ISO_CURRENCY= 'CHINA'
NLS_NUMERIC_CHARACTERS=
'.,'
NLS_CALENDAR= 'GREGORIAN'
NLS_DATE_FORMAT= 'yyyy-mm-dd
dy'
NLS_DATE_LANGUAGE= 'SIMPLIFIED CHINESE'
NLS_SORT=
'BINARY'
TIME_ZONE= '+08:00'
NLS_DUAL_CURRENCY =
'RMB'
NLS_TIME_FORMAT = 'HH.MI.SSXFF AM'
NLS_TIMESTAMP_FORMAT
= 'DD-MON-RR HH.MI.SSXFF AM'
NLS_TIME_TZ_FORMAT = 'HH.MI.SSXFF AM
TZH:TZM'