oracle用户管理--oracle学习第四天

来源:互联网 发布:代购管理系统源码 编辑:程序博客网 时间:2024/06/07 12:17
===============oracle用户管理=====================
给test分配空间配额
alter user test1 quota unlimited on users
quota容量的意思
unlimited无限制
on users在users这个表空间上没有限制
--创建用户(指定密码)
SQL> create user test identified by test;

用户已创建。
--连接用户
SQL> conn test/test;
ERROR:
ORA-01045: user TEST lacks CREATE SESSION privilege; logon denied

警告: 您不再连接到 ORACLE。
--组用户授session权限
SQL>
授权用户登录
SQL> grant create session to test;

授权成功。
--再次登录
C:\Users\Administrator>sqlplus test/test

SQL*Plus: Release 10.2.0.1.0 - Production on 星期三 11月 6 22:32:14 2013

Copyright (c) 1982, 2005, Oracle.  All rights reserved.


连接到:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
--查询该用户拥有的表
SQL>

--查询拥有的表(test)
SQL> select * from tab;

未选定行
--查询能够访问的表
SQL> select * from all_objects
--创建表,权限不足,需要dba授权

SQL> create table test(id number);
create table test(id number)
*
第 1 行出现错误:
ORA-01031: 权限不足


--dba为用户修改密码(dba)

SQL> alter user test identified by test2;

用户已更改。
--锁定用户(dba)

SQL> alter user test account lock;

用户已更改。
--解锁用户(dba)
SQL> alter user test account unlock;

用户已更改。

--删除用户(dba)

SQL> drop user test;

用户已删除。
--删除用户后登录,登录失败
C:\Users\Administrator>sqlplus test/test2

SQL*Plus: Release 10.2.0.1.0 - Production on 星期三 11月 6 22:44:19 2013

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

ERROR:
ORA-01017: invalid username/password; logon denied
================授权==============================
授权: grant 权限1,权限2,... to 用户;
收回权限:remove 权限1,权限2,...from user;

--创建test1用户(dba)
SQL> create user test1 identified by test1
  2  ;

用户已创建。
--授予session,创建表的权限(dba)
SQL> grant create session,create table to test1;

授权成功。

SQL>
--因为没有给用户分配磁盘配额,不能创建表(test1)
SQL> create table test(id number);
create table test(id number)
*
第 1 行出现错误:
ORA-01950: 对表空间 'USERS' 无权限


--给用户分配磁盘配额(dba)

SQL> alter user test1 quota unlimited on users;

用户已更改。
--再次创建表(test1)

SQL> create table test(id number);

表已创建。

--创建视图的权限(test1)
SQL> create view myview as select * from test;
create view myview as select * from test
            *
第 1 行出现错误:
ORA-01031: 权限不足
--授权创建视图(dba)
SQL> grant create view to test1;

授权成功。
--创建视图(test1)
SQL> create view myview as select * from test;

视图已创建。
============角色管理========================
--创建角色/删除(dba)

SQL> create role role1;

角色已创建。

--删除角色(dba)
SQL> drop role role1;

角色已删除。
==给角色授权(dba)
 grant create session,create table,create view to role1;
--收回权限(dba)
SQL> revoke create session,create table,create view from role1;

撤销成功。

--给用户分配角色(dba)

SQL> grant role1 to test1;

授权成功。