Oracle新建用戶,授權,建表空間(轉)

2009-03-16 11:21
create用戶
sql 代碼

   1.
Sql代碼
  1. SQL> create user visiontv identified by visiontv default tablespace visiontv quota 10m on users;    
SQL> create user visiontv identified by visiontv default tablespace visiontv quota 10m on users;
  

grant privilege
sql 代碼

   1.
Sql代碼
  1. SQL> grant connect,resource to visiontv;   
SQL> grant connect,resource to visiontv;


create tablespace
sql 代碼

Sql代碼
  1. 1. SQL> create tablespace visiontv datafile 'D:/DBServer/oracle/oradata/oradb01/vis      
  2. 2. iontv.ora' size 100m reuse default storage(initial 500k next 500k pctincrease 20      
  3. 3. );    
1. SQL> create tablespace visiontv datafile 'D:/DBServer/oracle/oradata/oradb01/vis   
   2. iontv.ora' size 100m reuse default storage(initial 500k next 500k pctincrease 20   
   3. );




import後就可以用了。

//

建立用戶到用戶建表的步驟:
Server
建立:create user 用戶名 identified by "密碼";
授權:grant create session to 用戶名;
            grant create table to 用戶名;
            grant create tablespace to 用戶名;
            grant create view to 用戶名;

Client:
建立表空間(一般建N個存數據的表空間和一個索引空間):
create tablespace 表空間名
datafile ' 路徑(要先建好路徑)/***.dbf ' size *M
tempfile ' 路徑/***.dbf ' size *M
autoextend on --自動增長
--還有一些定義大小的命令,看需要
default storage(
initial 100K,
next 100k,
);
Server:
授予用戶使用表空間的權限:
alter user 用戶名 quota unlimited on 表空間;
或 alter user 用戶名 quota *M on 表空間;
自此,才大功告成可以隨意建表,運行SQL腳本!

//1.建表空間

Sql代碼
  1. create tablespace OSDB datafile 'F:/oracle/oradata/glsqjz/OSDB.ora' size 100m reuse default storage(initial 500k next 500k pctincrease 20);  
create tablespace OSDB datafile 'F:/oracle/oradata/glsqjz/OSDB.ora' size 100m reuse default storage(initial 500k next 500k pctincrease 20);

2.建用戶

Sql代碼
  1. create user OSUSER identified by OSUSER  
create user OSUSER identified by OSUSER
;//identified by 後面的是密碼,前面的是用戶名

3.用戶授權

Sql代碼
  1. grant resource,connect,RECOVERY_CATALOG_OWNER to OSUSER ;   
  2.   
  3. grant create table to OSUSER ;   
  4.   
  5. alter user OSUSER quota unlimited ON OSDB;   
  6.   
  7. alter user OSUSER default tablespace OSDB;  
grant resource,connect,RECOVERY_CATALOG_OWNER to OSUSER ;

grant create table to OSUSER ;

alter user OSUSER quota unlimited ON OSDB;

alter user OSUSER default tablespace OSDB;

4.刪除表空間

Sql代碼
  1. DROP TABLESPACE TableSpaceName INCLUDING CONTENTS AND DATAFILES;  
DROP TABLESPACE TableSpaceName INCLUDING CONTENTS AND DATAFILES;

5.刪除用戶

Sql代碼
  1. DROP USER User_Name CASCADE  
DROP USER User_Name CASCADE


6.刪除表的注意事項

在刪除一個表中的全部數據時,須使用
Sql代碼
  1. TRUNCATE TABLE 表名  
TRUNCATE TABLE 表名
;因爲用DROP TABLE,DELETE * FROM 表名時,TABLESPACE表空間該表的佔用空間並未釋放,反覆幾次DROP,DELETE操作後,該TABLESPACE上百兆的空間就被耗光了。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章