表空間(tablespace)、段(segment)、區(extent)、塊(block),這些都是oracle數據庫在數據文件中組織數據的基本單元
1.創建表空間
create tablespace SIRM2
datafile 'D:\oracle\product\10.2.0\oradata\orcl\SIRM2.dbf' size 1024M --存儲地址 初始大小1G
autoextend on next 10M maxsize unlimited --每次擴展10M,無限制擴展
EXTENT MANAGEMENT local autoallocate
segment space management auto;
創建表空間,名稱為SIRM2 ;
2. 表空間有一個數據文件*.dbf,大小為1024MB;
3. 允許表空間自動擴展(autoextends),每次增長10MB(next 10M),並且不限制最大大小;
4. 說明表空間本地(local)管理,並自動分配范圍(autoallocate),用戶不能指定范圍的大小;
5. 段空間(segment)的空間管理上使用bitmaps(auto)來管理數據塊。使用AUTO會比使用MANUAL有更好的空間利用率,與效能上的提升。
在Oracle 8i以前,可以有兩種選擇,一種是在字典中管理(DICTIONARY),另一種是本地管理(LOCAL ),從9I開始,只能是本地管理方式.因為LOCAL 管理方式有很多優點.
在字典中管理(DICTIONARY): 將數據文件中的每一個存儲單元做為一條記錄,所以在做DM操作時,就會產生大量的對這個管理表的Delete和Update操作.做大量數據管理時,將會產生很多的DM操作,嚴得的影響性能,同時,長時間對表數據的操作,會產生很多的磁盤碎片,這就是為什么要做磁盤整理的原因.
本地管理(LOCAL): 用二進制的方式管理磁盤,有很高的效率,同進能最大限度的使用磁盤. 同時能夠自動跟蹤記錄臨近空閑空間的情況,避免進行空閑區的合並操作。
SEGMENT SPACE MANAGEMENT
磁盤擴展管理方法:
SEGMENT SPACE MANAGEMENT: 使用該選項時區大小由系統自動確定。由於 Oracle 可確定各區的最佳大小,所以區大小是可變的。
2.創建用戶
create user test identified by test
default tablespace SIRM2
temporary tablespace TEMP
profile DEFAULT;
3.授權
grant dba to test;
grant connect to test;
grant resource to test;
4.代碼例子
--查看表空間 select distinct tablespace_name from dba_free_space; --創建表空間 create tablespace XH_History_WS datafile 'D:\app\bailongfei123\oradata\orcl\XH_History_WS.dbf' size 120M --存儲地址 初始大小120M autoextend on next 10M maxsize unlimited --每次擴展10M,無限制擴展 EXTENT MANAGEMENT local autoallocate ---說明表空間本地(local)管理,並自動分配范圍(autoallocate),用戶不能指定范圍的大小 segment space management auto; --段空間(segment)的空間管理上使用bitmaps(auto)來管理數據塊。使用AUTO會比使用MANUAL有更好的空間利用率,與效能上的提升 --刪除表空間 drop tablespace XH_History_WS including contents and datafiles; --創建用戶 create user XH_Bai_History_WS identified by tiger default tablespace XH_History_WS; ----- alter user 用戶 quota unlimited on 表空間A; alter user 用戶 quota unlimited on 表空間B; --或者放開所有表空間 grant unlimited tablespace to 用戶; --或者索性給所有權限 grant resource,connect,dba to 用戶; --查詢用戶 select * from all_users; --授權 grant connect to XH_Bai_History_WS;-- --是授予最終用戶的典型權利,最基本的權力,能夠連接到ORACLE數據庫中,並在對其他用戶的表有訪問權限時,做SELECT、UPDATE、INSERTT等操作 grant resource to XH_Bai_History_WS;--是授予開發人員的,能在自己的方案中創建表、序列、視圖等。 grant dba to XH_Bai_History_WS;--是授予系統管理員的,擁有該角色的用戶就能成為系統管理員了,它擁有所有的系統權限 --revoke revoke connect,resource from java_user; grant create view to java_user --創建視圖權限,一般網上找都是說的這句,但是光有這句還是無法創建 grant create view to XH_Bai_History_WS; --授予查詢權限 grant select any table to B; --授予權限 grant select any dictionary to B; --以上3項地后就能正常創建視圖了。