建立表空間 \x0d\x0a建立表空間是使用crate tablespace命令完成的,需要注意的是,一般情況下,建立表空間是特權(quán)用戶或是dba來執(zhí)行的,如果用其它用戶來創(chuàng)建表空間,則用戶必須要具有create tablespace的系統(tǒng)權(quán)限。 \x0d\x0a 建立數(shù)據(jù)表空間 \x0d\x0a在建立數(shù)據(jù)庫后,為便于管理表,最好建立自己的表空間 \x0d\x0acreate tablespace data01 datafile 'd:\test\dada01.dbf' size 20m uniform size128k; \x0d\x0a說明:執(zhí)行完上述命令后,會建立名稱為data01的表空間,并為該表空間建立名稱為data01.dbf的數(shù)據(jù)文件,區(qū)的大小為128k
目前創(chuàng)新互聯(lián)已為上千的企業(yè)提供了網(wǎng)站建設(shè)、域名、虛擬主機、網(wǎng)站改版維護、企業(yè)網(wǎng)站設(shè)計、隆子網(wǎng)站維護等服務(wù),公司將堅持客戶導向、應用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
創(chuàng)建表空間的基礎(chǔ)語法:
create tablespace 表間名 datafile '數(shù)據(jù)文件名' size 表空間大小;
創(chuàng)建表并指定表空間
create user news identified by news default tablespace news_tablespace;
授權(quán)表空間:
grant dba to news; --表示把 dba權(quán)限授予給news用戶 授權(quán)成功
以下的文章主要是對Oracle表空間的設(shè)置問題的描述 我們大家都知道Oracle數(shù)據(jù)庫中的表很多 一共算是 多個表 大概你能占十幾個G空間 下面的文章主要講述的是Oracle表空間設(shè)置
是設(shè)置在USERS表空間內(nèi)建立一個十幾G的數(shù)據(jù)文件USERS DBF呢?
還是在USERS表空間內(nèi)建立三個幾G的數(shù)據(jù)文件USERS DBF USERS DBF USERS DBF
Oracle表空間內(nèi)的數(shù)據(jù)文件以多大上限最好?是越大的單個文件好呢?還是小一點的多個文件好?以什么為原則?
Oracle數(shù)據(jù)庫產(chǎn)生許多碎片怎么辦?存儲數(shù)據(jù)文件的這個盤符 可以定期做 磁盤碎片整理 嗎?該怎么做?要不要先把數(shù)據(jù)庫關(guān)掉再做?
兩個數(shù)據(jù)庫同時運行在一個服務(wù)器上面 為兩套業(yè)務(wù)系統(tǒng)服務(wù)
兩個數(shù)據(jù)庫共用一個對外端口 合理嗎?會不會影響數(shù)據(jù)吞吐性能?要不要一個用 端口 一個用 端口 開兩個監(jiān)聽程序這樣設(shè)置?
分成多個數(shù)據(jù)文件
原因是
( )有些操作系統(tǒng)對文件大小有限制 或者安裝是做過限制 你不一定清楚這些限制 而且某些版本的傳輸協(xié)議不支持過大的文件 例如AIX某版本的sftp就不允許傳輸文件超過 G
( )你現(xiàn)在數(shù)據(jù)量小 所以不用考慮太多 但將來數(shù)據(jù)量增大以后 要考慮負載均衡 就要把部分數(shù)據(jù)文件挪到其他盤上 多個數(shù)據(jù)文件會使這樣很容易
( )當你的數(shù)據(jù)文件某部分出現(xiàn)壞塊之后 你需要讓某個數(shù)據(jù)文件暫時offline恢復等等 如果你的數(shù)據(jù)文件過大 影響也可能更大
( )使用RMAN備份的時候 單獨備份數(shù)據(jù)文件 恢復也可單獨恢復 因此很顯然分多個數(shù)據(jù)文件有好處
單個數(shù)據(jù)文件的大小 這個要考慮的東西比較多 比如你的存儲性能 比如你的總數(shù)據(jù)量 等等 專家的建議是 對于幾十G到幾百G的數(shù)據(jù)量 單個數(shù)據(jù)文件的大小一般在 - G 原則有一套理論說明的 但是我忘了 只說一下個人的建議
( )操作系統(tǒng)限制 這個如果沒有注意到很容易出問題 特別是自擴展的數(shù)據(jù)文件 例如system undotbs等等
( )Oracle表空間的大小 要考慮單個數(shù)據(jù)文件移動或恢復的情況 顯然如果對于幾十個G的表空間 就分成兩個數(shù)據(jù)文件 并不能對你的操作帶來什么好處
( )全憑經(jīng)驗把握的東西 還要考慮的你硬盤的raid情況等等 情況比較復雜 只能折衷 不能簡單的一概而論說大就好或者小就好
當然這并不是主要的 你沒必要太關(guān)注這方面的東西 因為對于你這樣的簡單環(huán)境來說 區(qū)區(qū)一個表空間數(shù)據(jù)文件大小的修改 對性能的提高甚至不如多建一條索引大!
數(shù)據(jù)庫產(chǎn)生碎片怎么辦 我告訴你 數(shù)據(jù)庫的碎片和windows說的那個碎片整理是兩碼事 你不要混淆 windows再怎么整理也是沒用的
其實我坦白的跟你講 你幾十個G的數(shù)據(jù)庫 短期根本就不用考慮什么碎片問題 這種情況得等大家都反映數(shù)據(jù)庫開始變慢了 再考慮回收段空間等等 而且你都說 是否要關(guān)閉了再做 說明你的數(shù)據(jù)庫可以關(guān) 也就暗示了它 不是很忙 那么最近 - 年之內(nèi)你不用考慮做這件事了
兩個數(shù)據(jù)庫同時用一個監(jiān)聽器 當然不合理 你一個監(jiān)聽器掛了兩個數(shù)據(jù)庫都連不上去 你不覺得這樣風險很大么?
兩個公用一個端口 對數(shù)據(jù)的吞吐性能是沒有任何影響的 這個你不用擔心 但是安全性無疑很低
所以當然有必要用兩個端口 和 其實我建議你把兩個數(shù)據(jù)庫安裝在兩個不同的操作系統(tǒng)用戶下面 這樣大家彼此邏輯都清楚 影響小 帶來的好處你能慢慢體會到 這純粹是從我的工作經(jīng)驗來建議你的 如果你嫌麻煩當我沒說
如何設(shè)置?你這個問題問的復雜了 我可懶得把編輯TNS的一堆寫出來
lishixinzhi/Article/program/Oracle/201311/18779