Oracle 9i创建用户和表空间并赋予权限

来源:互联网 发布:日剧花样少年少女 知乎 编辑:程序博客网 时间:2024/05/28 20:18

/*create tablespace(后面指定其为user's default tablespace)*/
--DROP TABLESPACE HOT;/*tablespace HOT只能在此删除*/
--删除时先切换用户,保证有足够权限
DROP USER jkant CASCADE;

create tablespace HOT datafile 'D:/MyOracleDB/HOT.dbf' size 100m reuse autoextend on next 10m;


/*在ORACLE中创建一个可用用户步骤如下:*/
--1、创建用户+密码
create user jkant identified by jkant;

--2、单独赋予用户权限(集体赋予也可以分开)
--grant create session to jkant;
--grant create table to jkant;
--grant create sequence to jkant;
--集体式
--GRANT CREATE USER,DROP USER,ALTER USER,CREATE ANY VIEW,DROP ANY VIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE,DBA,CONNECT,RESOURCE,CREATE SESSION  TO 用户名字
GRANT CREATE SESSION,CREATE TABLE,CREATE SEQUENCE,CREATE ANY VIEW,DROP ANY VIEW,RESOURCE,EXP_FULL_DATABASE,IMP_FULL_DATABASE TO jkant;

/*4、指定默认tablespace,使用户创建的各种对象若无特殊指定,都将在该默认tablespace中创建
注意:HOT必须是当前ORACLE存在的tablespace*/
alter user jkant default tablespace HOT;

--5、为用户分配tablespace配额(可以分配在多个表空间)
alter user jkant quota 40m on HOT;
alter user jkant quota 60m on USERS;
/*至此在[ORACLE企业管理器-安全性-用户]中可以看到该用户,
并可以在PL/SQL中以该用户登陆,但是在未创建任何对象之前将不会在[方案]中显示;
所以在PL/SQL中以该用户身份登陆后运行下面的建表语句,刷新[方案]即可看到该用户方案
*/
COMMIT;

/*关于权限分配可以查看一下表信息,其中有单个权限(如:create session,create table等)
也有角色权限(如:dba,sys,resource等,--自己猜的这应该就叫角色吧)*/
SELECT * FROM DBA_SYS_PRIVS;
SELECT GRANTEE,PRIVILEGE FROM DBA_SYS_PRIVS WHERE GRANTEE = 'RESOURCE';

 

原创粉丝点击