1. 程式人生 > >ORACLE-用戶及表空間創建命令總結

ORACLE-用戶及表空間創建命令總結

oracle 表空間

博文說明【前言】:

本文將通過個人口吻介紹記錄用戶及表空間創建相關命令,在目前時間點【2017年5月16號】下,所掌握的技術水平有限,可能會存在不少知識理解不夠深入或全面,望大家指出問題共同交流,在後續工作及學習中如發現本文內容與實際情況有所偏差,將會完善該博文內容。



正文:


一:創建表空間

此空間用用於數據存儲【存儲表、function、存儲過程等,即存儲數據結構以及真實數據,使用實際物理存儲區域】



示例1:創建表空間和表空間初始數據文件


create tablespace xxxx_db

datafile ‘/u2/oradb/datafile/dsdb/xxx_db01.dbf‘ size 1024M REUSE

AUTOEXTEND ON --自動增長

NEXT 500M MAXSIZE 20G --限制最大容量(單個數據文件一般在10G~25G之間,不要超過32G)


--增加第二個數據文件,在硬盤空間允許的情況下,可繼續增加。

alter tablespace xxxx_db add datafile

‘/u2/oradb/datafile/dsdb/xxxx_db02.dbf‘ SIZE 1024M

AUTOEXTEND ON NEXT 500M MAXSIZE 20G;


命令解釋:創建表空間:xxxx_db,數據文件物理存儲路徑為:/u2/oradb/datafile/dsdb/,數據文件初始大小為1G(1024M),當1G使用完畢之後,每個數據文件可自動擴展容量,每次擴展大小為500M,最大可擴展到20G。

註意:/u2/oradb/datafile/dsdb/為數據文件存儲路徑,物理路徑可通過sql語句查詢得出。

select file_id,

file_name,

round(bytes / (1024 * 1024), 0) total_space

FROM dba_data_files

ORDER BY tablespace_name;


二:創建臨時表空間

此空間用於管理數據庫排序操作以及用於存儲臨時表、中間排序結果等臨時對象,當ORACLE裏需要用到SORT及其他需要存儲臨時數據的時候,並且當PGA中sort_area_size大小不夠時,將會把數據放入臨時表空間裏進行排序。

當操作完成後,系統會自動清理臨時表空間中的臨時對象,自動釋放臨時段。這裏的釋放只是標記為空閑、可以重用,其實實質占用的磁盤空間並沒有真正釋放。這也是臨時表空間有時會不斷增大的原因。


示例2:創建臨時表空間(可選,非必要,如果沒有創建專用的臨時表空間,則創建用戶時,使用系統默認臨時表空間就行。)


create temporary tablespace xxxx_temp_db --初始大小:10G

TEMPFILE ‘/u2/oradb/datafile/dsdb/xxxx_temp_db01.dbf‘ SIZE 1000M REUSE

AUTOEXTEND ON NEXT 200M MAXSIZE 10G;


命令解釋:創建臨時表空間:xxxx_temp_db,數據文件物理存儲路徑為:/u2/oradb/datafile/dsdb/,數據文件初始大小為1000M,當1000M使用完畢之後,每個數據文件可自動擴展容量,每次擴展大小為200M,最大可擴展到10G。

註意:/u2/oradb/datafile/dsdb/為數據文件存儲路徑,物理路徑可通過sql語句查詢得出。

select file_id,

file_name,

round(bytes / (1024 * 1024), 0) total_space

FROM dba_data_files

ORDER BY tablespace_name;


三:創建用戶


示例3:

1、創建用戶

create user xxxx identified by "xxxx" default tablespace xxxx_db;


--如果有創建專用臨時表空間,則使用以下第一個語句;沒有則使用第二個語句:

alter user xxxx temporary tablespace xxxx_temp_db; --可選


alter user xxxx temporary tablespace TEMP1;


2、給用戶分配表空間權限

--分配無限的表空間限額

alter user xxxx quota unlimited on xxxx_db;


3、授權

grant connect,resource to xxxx;


--授權dba要看具體情況(可選)

grant dba to xxxx;



實際案例:


create tablespace factorytest_db datafile ‘+DATA/orcl/datafile/factorytest.dbf‘ size 1024M REUSE AUTOEXTEND ON NEXT 500M MAXSIZE 5G


create user factorytest identified by "factorytest" default tablespace factorytest_db;


grant connect,resource,dba to factorytest;


alter user factorytest quota unlimited on factorytest_db;


commit;




結尾:




感謝閱讀,祝有收獲的一天,謝謝!





本文出自 “清風攬月的博客” 博客,請務必保留此出處http://watchmen.blog.51cto.com/6091957/1926409

ORACLE-用戶及表空間創建命令總結