Oracle基础操作:创建用户、权限与查看权限流程
需积分: 9 76 浏览量
更新于2024-09-14
收藏 16KB DOCX 举报
Oracle 是一种广泛使用的数据库管理系统,本文将详细介绍在 Oracle 环境中进行一些基本操作的过程,包括创建用户、授权以及管理用户权限。首先,让我们深入了解如何创建和管理用户。
**创建用户与权限授予:**
创建用户是通过 SQL 命令 `CREATE USER` 完成的,例如:
```sql
SQL> CREATE USER test IDENTIFIED BY test;
```
这将创建一个名为 "test" 的用户,并设置其密码为 "test"。然而,新创建的用户通常不能立即登录,因为它们需要 `CREATESession` 权限。通过以下命令可以赋予此权限:
```sql
SQL> GRANT CREATESESSION TO test;
```
接着,为了允许用户创建表,需要额外的 `CREATE TABLE` 权限:
```sql
SQL> GRANT CREATE TABLE TO test;
```
然而,即使有了创建表的权限,用户可能仍无法立即操作,因为还需要使用特定的表空间。通过 `GRANT UNLIMITED TABLESPACE` 可以允许用户无限使用表空间:
```sql
SQL> GRANT UNLIMITED TABLESPACE TO test;
```
**权限管理:**
检查用户当前的权限是通过查询系统视图 `USER_SYS_PRIVS`,如:
```sql
SQL> SELECT * FROM user_sys_privs;
```
这个视图显示了用户拥有哪些系统权限。
**查看用户对象:**
DBA 用户(如 sys 和 system)可以查看其他用户(如 test)的表或其他对象,通过查询特定视图,如:
- 查看某个用户的所有表:
```sql
SQL> SELECT tablespace_name, table_name FROM user_all_tables WHERE table_name = 'STUDENT';
```
- 不同视图的区别:
- `dba_tables`:显示所有数据库用户的表。
- `dba_all_tables`:包含所有数据库的表,包括系统表。
- `user_tables`:显示当前用户的所有表。
- `user_all_tables`:显示当前用户及其角色的所有表。
- `all_tables`:显示所有用户的表,不包括系统表。
- `all_all_tables`:所有数据库的表,包括系统表。
**撤销权限:**
如果需要从用户那里收回权限,可以使用 `REVOKE` 命令,如:
```sql
SQL> REVOKE CREATE TABLE FROM test;
```
在 Oracle 环境中,管理和控制用户权限是关键任务之一。通过创建、授权和撤销操作,确保了数据的安全性和完整性,同时确保了不同用户只能在其权限范围内执行操作。理解这些基础操作对于有效使用和维护 Oracle 数据库至关重要。
164 浏览量
2009-10-16 上传
2014-08-27 上传
120 浏览量
120 浏览量
chenJoe
- 粉丝: 1
- 资源: 17
最新资源
- 商业
- S7-200SMART PLC_10的幂函数库文件+使用说明.rar
- JTBC网站内容管理系统jenfy美化版
- MySonet-开源
- 西门子PLC测试功能.rar
- 易语言复制组件
- STM32F103C8T6超声波测距,c语言开发tts引擎源码,c语言
- de.htwg.se.BlackjackKNInScala:BlackjackKN,SE项目
- sentry-wizard:Sentry项目设置向导
- 变压器传输特性仿真电路Proteus电路仿真.rar
- 风机负压力自动控制系统.rar
- Epl_Ds_challenge
- k近邻法,适合学生的c语言项目源码,c语言
- 菲菲美业2015年母亲节专题页
- 工作汇报·总结2.rar
- TailLog源:TailLog源(TailLog开源代码)