以前一直都是自己拷貝的建立語句來建立oracle的表空間,今天手頭上什麼資料都沒有,所以就特意的整理了一下,oracle是如何建立表空間的,所以跟大家分享一下。如果有什麼地方寫的不正確,或者是有錯別字,請及時的糾正:
1、為什麼要建立表空間?
答:在建立使用者的時候,我們建議資料庫管理員要指定使用者的預設表空間。因為我們在利用create語句建立資料庫物件,如資料庫表的時候,其預設是儲存在資料庫的當前預設空間。若不指定使用者預設表空間的話,則使用者每次建立資料庫物件的時候,都要指定表空間,顯然,這並不是很合理。
2、如何建立表空間?
答:建立示例:
create
tablespace
"tablecontrols"
datafile 'c:\oracle\product\tablecontrols\tablecontrols.dbf'
size 300m
autoextend on
next
100m
maxsize unlimited
logging online permanent;
oracle安裝完後,其中有乙個預設的資料庫,除了這個預設的資料庫外,我們還可以建立自己的資料庫。對於初學者來說,為了避免麻煩,可以用』database
configuration assistant』嚮導來建立資料庫。建立完資料庫後,並不能立即在資料庫中建表,必須先建立該資料庫的使用者,並且為該使用者指定表空間。
下面是建立資料庫使用者的具體過程:
1.假如現在已經建好名為』news』的資料庫,此時在f:/oracle/product/10.1.0/oradata/目錄下已經存在news目錄(注意:我的oracle10g安裝在f:/oracle下,若
你的oracle安裝在別的目錄,那麼你新建的資料庫目錄就在*/product/10.1.0/oradata/目錄下)。
2.在建立使用者之前,先要建立表空間:
其格式為:格式: create 表空間名 datafile 『資料檔名』 size 表空間大小;
如:sql> create tablespace news_tablespace datafile 『f:/oracle/product/10.1.0/oradata/news/news_data.dbf』 size 500m;
其中』news_tablespace』是你自定義的表空間名稱,可以任意取名;'f:/oracle/product/10.1.0/oradata/news/news_data.dbf』是資料檔案的存放位
置,'news_data.dbf』檔名也是任意取;'size 500m』是指定該資料檔案的大小,也就是表空間的大小。
3.現在建好了名為』news_tablespace』的表空間,下面就可以建立使用者了:
其格式為:格式: create user 使用者名稱 identified by 密碼 default tablespace 表空間表;
如:sql> create user news identified by news default tablespace news_tablespace;
預設表空間』default tablespace』使用上面建立的表空間。
4.接著授權給新建的使用者:
sql> grant connect,resource to news; --表示把 connect,resource許可權授予news使用者
sql> grant dba to news; --表示把 dba許可權授予給news使用者
授權成功。
1、先查詢空閒空間
select tablespace_name,file_id,block_id,bytes,blocks from dba_free_space;
2、增加oracle表空間
先查詢資料檔案名稱、大小和路徑的資訊,語句如下:
select tablespace_name,file_id,bytes,file_name from dba_data_files;
3、修改檔案大小語句如下
alter database datafile '需要增加的資料檔案路徑,即上面查詢出來的路徑 'resize 800m;
4、建立oracle表空間
建立本地管理臨時表空間,如果是臨時表空間,所有語句中的datafile都換為tempfile 8i系統預設建立字典管理臨時表空間,要建立本地管理臨時表空間要加temporary tablespace關鍵字 建立本地管理臨時表空間時,不得使用atuoallocate引數,系統預設建立uniform管理方式
為表空間增加資料檔案:
5、更改自動擴充套件屬性:
drop tablespace *** including contents and datafiles
Oracle 10g建立使用者和表空間
建立資料表空間 create tablespace yycg0213 logging datafile c oracle product 10.2.0 oradata orcl yycg0213.dbf size 32m autoextend on next 32m maxsize 2048m ex...
oracle10g 釋放表空間
我們都知道資料表的龐大導而致其查詢速度的降低是水到渠成的,所以我們只有將相關的資料表的資料相應的移走,但是如果使用oracle delete之後,相關的資料刪除了,但是速度沒有多大改善,憂悶了。使用備份表再drop掉原表。的確可以解決問題。但是較麻煩,今天請教了乙個oracle高手,解決了問題。由於...
Oracle 10g表轉移表空間
1.單錶轉移表空間 場景 有表user存放在表空間oldspace下,需把錶user移動到表空間newspace下 執行語句 alter table user move tablespace newspace commit 2.使用者scott下的所有表都轉移至表空間newspace下 select...