1.表空間分類:
(1)臨時表空間:存放臨時數據
(2)數據表空間:又稱爲用戶表空間,用來存放永久數據(不刪除永久存在)
(3)日誌表空間:用來存放日誌信息
一般情況下,用戶使用時只需要創建數據表空間即可,根據情況決定創建幾種表空間
2.表空間創建思路,:
(1)創建表空間,創建用戶,給用戶設置默認表空間,給用戶分配權限
(2)創建表空間, 創建用戶並制定默認表空間,跟用戶分配權限
注意:表空間的創建只能是管理員用戶
3.windows 系統表空間的創建(sql腳本)
create temporary tablespace onlinepay_tmp
tempfile 'C:\oracle\product\10.2.0\oradata\onlinepay0209\onlinepay_temp01.dbf'
size 32m
autoextend on
next 32m maxsize 2048m
extent management local;
創建數據庫表空間
create tablespace onlinepay
logging
datafile 'C:\oracle\product\10.2.0\oradata\onlinepay0209\onlinepay01.dbf'
size 32m
autoextend on
next 32m maxsize 2048m
extent management local;
創建用戶並分配表空間
create user zichen identified by root
default tablespace onlinepay
temporary tablespace online_tmp;
給用戶分配權限
GRANT connect,resource, exp_full_database ,imp_full_database to zichen;
4.aix系統下表空間的創建(sql腳本)
創建臨時表空間
create temporary tablespace onlinepay_tmp
tempfile '.\u01\app\oracle\product\11.2.0\db_1\oradata\orcl\onlinepay_temp01.dbf'
size 32m
autoextend on
next 32m maxsize 2048m
extent management local;
創建數據庫表空間
create tablespace onlinepay
logging
datafile '.\u01\app\oracle\product\11.2.0\db_1\oradata\orcl\onlinepay01.dbf'
size 32m
autoextend on
next 32m maxsize 2048m
extent management local;
create user jenminzhang identified by jenminzhang
default tablespace onlinepay
temporary tablespace onlinepay_tmp;
給用戶分配權限
GRANT connect,resource, exp_full_database ,imp_full_database to jenminzhang;
5.創建過程中應該注意問題:
(1)創建表空間時需要注意它的存放路徑(存放路徑爲 oradata目錄下的目標數據庫目錄):
windows下一般路徑爲:oracle\product\10.2.0\oradata\數據庫名稱\name01.dbf (要的創建的表空間名稱+01.dbf)
aix 下一般路徑爲: .\u01\app\oracle\product\11.2.0\db_1\oradata\數據庫名稱\name01.dbf (要的創建的表空間名稱+01.dbf)
在aix 系統下 可以使用 ”find . -name oradata “表示 查詢名稱爲 oradata 的文件夾,返回存放位置
(2)創建用戶分配權限應注意分配權限至少要有四種: connect exp_full_database imp_full_database resourse
(3)只有管理員纔可以創建(刪除)表空間
6.使用過程中應該注意問題:
在使用過程中,數據庫配置部分與表空間名稱沒有關係,配置時只配置數據庫服務IP地址和數據庫服務名稱 ,使用表空間的所有者(目標表空間的管理用戶和密碼),
用法和以前一樣
7. 查看用戶與表空間關係
select distinct(owner) ,tablespace_name from dba_segments;
8.刪除表空間
drop tablespace 表空名稱;
9.權限查看:
查看所有用戶
SELECT * FROM DBA_USERS;
SELECT * FROM ALL_USERS;
SELECT * FROM USER_USERS;
查看用戶系統權限
SELECT * FROM DBA_SYS_PRIVS;
SELECT * FROM USER_SYS_PRIVS;
查看用戶對象或角色權限
SELECT * FROM DBA_TAB_PRIVS;
SELECT * FROM ALL_TAB_PRIVS;
SELECT * FROM USER_TAB_PRIVS;
查看所有角色
SELECT * FROM DBA_ROLES;
查看用戶或角色所擁有的角色
SELECT * FROM DBA_ROLE_PRIVS;
SELECT * FROM USER_ROLE_PRIV