深入讲述Oracle 9i创建表空间

数据库 Oracle
在向大家详细介绍Oracle 9i建库之前,首先让大家了解下Oracle是如何创建表空间的,希望对大家有用。
下面是有关Oracle 9i创建表空间,用户,授权,角色.常用的SQL语句,用sys帐号登陆,连接身份选SYSDBA,执行如下语句

// 创建表空间
drop tablespace test;
create tablespace test
DATAFILE 'D:\oracle\oradata\test\test.dbf'
size 10M AUTOEXTEND ON NEXT 1M MAXSIZE UNLIMITED;
alter user scott quota unlimited on test;
commit;

创建了一个名为test的表空间,数据库文件创建 在D:\oracle\oradata\test\test.dbf,并给scott 帐号授权使用表空间。

//创建scott用户 并分配表空间
drop user scott cascade;
create user scott
identified by tiger
default tablespace test
quota 100M on test;
commit;

//创建完毕后授权
Grant connect,resource,create session,create table,create sequence,create any view,EXP_FULL_DATABASE, IMP_FULL_DATABASE, DBA,to scott;

//sql plus 中执行.sql 文件
@d:\xzsp_hrb_oracle_doc.sql

//创建一个名为manager的角色
create role manager;

//给manager这个角色授于相应的系统权限
grant create table,create view,create session to manager;

//授予针对某个对象的权限如查询某个表的权限
grant select on 表名字 to manager; //可以把一个权限同时赋予多个角色或者用户,但不能把多个权限同时赋予多个角色或者用户,需分开执行。

//把manager这个角色分配给scott,xzsp两个帐号。
grant manager to scott,xzsp;

//修改帐号scott密码为tiger
alert user scott identified by tiger;

//scott用户建的表,如果想给其他用户权限则必须用scott用户登陆后执行如下语句,即使你是DBA也不把

一个用户(scott)所创建的表赋予给另外一个用户(xzsp)操作的权限,除非scott用户给DBA授权。
grant select on 表名字 to xzsp;
grant select on employees to scott,xzsp;

//用scott用户登陆 给system授权
grant select on student to system with grant option;

//用system 登陆,再把查询student的权限授予另外一个用户。
grant select on scott.student to xzsp;

//system同时可取消xzsp用户的该权限。
revoke select on scott.student from xzsp;

权限传递的级联:scott用户把权限给A(同时允许A传递给其他用户 with grand option),A把权限再传递给B,如果scott用户撤消A的权限,则B也会失去相应的权限。

grant update (department_name,location_id) on departments to scott,xzsp; //授予用户修改某个表中指定字段的权限。

grant select,insert on departments to scott with grant option; //把查询,增加departments表的权限给scott用户并允许他把权限授予给其他拥护。

grant select on scott.departments to public; //授予public 角色查询scott下departments表的权限。

//访问其他数据库对象(database links)
create public database link hq.acme.com using 'sales';
select * from emp@hq.acme.com //emp为表名
CREATE USER 创建一个用户(通常由DBA来完成)。
GRANT 给于其他用户使用你自己对象的权限。
CREATE ROLE 创建一个权限的集合,即角色。
ALTER USER 修改一个用户的密码。
REVOKE 撤消一个用户在某个对象上的权限,如 表 视图等。

----------------------查看用户权限-----------------------------------
--------------------------------------------------------------------------
1.查看所有用户:
select * from dba_users;
select * from all_users;
select * from user_users;

2.查看用户或角色系统权限:
select * from dba_sys_privs;
select * from user_sys_privs;

3.查看用户对象权限:
select * from dba_tab_privs;
select * from all_tab_privs;
select * from user_tab_privs;

4.查看所有角色:
select * from dba_roles;

5.查看用户或角色所拥有的角色:
select * from dba_role_privs;
select * from user_role_privs;

【编辑推荐】

  1. Oracle性能诊断不能不知的秘籍
  2. 使用dtu远程连接Oracel 9i数据库的方法
  3. Windows2000服务器下安装Oracle9i与10g
  4. Oracle多表查询优化的代码示例
  5. Oracle更改的默认端口号剖析
责任编辑:佚名
相关推荐

2011-05-17 15:41:51

oracle 9i卸载

2010-04-27 17:58:17

Oracle 9i

2009-10-22 16:25:53

Oracle UNDO

2010-04-13 11:31:02

Oracle 9i e

2009-03-17 13:59:26

ORA-01578坏块Oracle

2010-04-13 10:29:12

2010-04-16 14:30:13

Oracle 9i

2009-01-06 09:14:08

8i9ioracle

2009-11-03 14:22:07

Oracle密码

2010-11-15 11:40:44

Oracle表空间

2010-04-14 16:22:42

Oracle 9i

2010-04-14 09:16:39

Oracle 9i

2010-04-19 13:12:36

Oracle 9i数据

2010-11-16 10:32:01

Oracle创建表空间

2010-04-22 11:41:55

Oracle 9i

2010-04-12 14:08:09

Oracle 9i R

2010-05-05 16:11:53

Oracle 9i

2010-04-15 14:18:30

Oracle创建

2010-04-15 14:39:56

Oracle创建表空间

2010-04-23 17:20:34

Oracle创建
点赞
收藏

51CTO技术栈公众号