Informix是IBM公司出品的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS)家族。作為一個(gè)集成解決方案,它被定位為作為IBM在線事務(wù)處理(OLTP)旗艦級(jí)數(shù)據(jù)服務(wù)系統(tǒng)。 IBM對(duì)Informix和DB2都有長(zhǎng)遠(yuǎn)的規(guī)劃,兩個(gè)數(shù)據(jù)庫(kù)產(chǎn)品互相吸取對(duì)方的技術(shù)優(yōu)勢(shì)。在2005年早些時(shí)候,IBM推出了Informix Dynamic Server(IDS)第10版。目前最新版本的是IDS11(v11.50,代碼名為“Cheetah 2”),在2008年5月6日全球同步上市。
Infomix數(shù)據(jù)庫(kù)發(fā)展歷程
1980年
在一家早期的S-100/CP/M公司Cromemco工作的Roger Sippl和Laura King開發(fā)了一個(gè)基于ISAM技術(shù)的小型的關(guān)系數(shù)據(jù)庫(kù),作為一個(gè)報(bào)表記錄器軟件的一部分。
1980年,Sippl和King離開Cromemco去開發(fā)關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)(RDS)。他們的第一個(gè)產(chǎn)品叫做馬拉松(Marathon),本質(zhì)上是一個(gè)他們以前那個(gè)ISAM作品的16位版本,并且在Onyx操作系統(tǒng)上發(fā)布,這種Onyx操作系統(tǒng)是一個(gè)為早期的ZiLOG微處理器開發(fā)的Unix操作系統(tǒng)。
在開發(fā)RDS的時(shí)候,他們把目光轉(zhuǎn)移到了新興的RDBMS市場(chǎng),并且在1981年發(fā)布了他們自己的一個(gè)產(chǎn)品:Informix(INFORMation on unIX)。它包含了他們自己的Informer語(yǔ)言。它具備了ACE報(bào)表記錄器的特性,用來把數(shù)據(jù)從數(shù)據(jù)庫(kù)里釋放出來,并且呈現(xiàn)給用戶以供讀取。它還具備了PERFORM屏幕格式工具的特性,可以讓用戶實(shí)現(xiàn)交互式的查詢并且編輯數(shù)據(jù)庫(kù)里的數(shù)據(jù)。這個(gè)產(chǎn)品的最終版本是1986年的3.30版。
在1985年,他們引進(jìn)了一種新的基于SQL的查詢引擎,作為INFORMIX-SQL(或ISQL)1.10版(1.00版一直沒有發(fā)行)的一部分。這個(gè)產(chǎn)品同樣包括了SQL和PERFORM的SQL變量。ISQL和早期的Informix產(chǎn)品最顯著的區(qū)別就在于將數(shù)據(jù)庫(kù)存取碼分散至一個(gè)引擎進(jìn)程中(sqlexec),而不是將其直接嵌入客戶端,這樣來為和用戶的電腦分離開的數(shù)據(jù)庫(kù)服務(wù)器上的客戶端-服務(wù)端運(yùn)算創(chuàng)造條件。而基礎(chǔ)的基于ISAM的文件存儲(chǔ)引擎就被稱作C-ISAM。
盡管在上世紀(jì)80年代Informix一直扮演一個(gè)小角色,但是隨著Unix和SQL在80年代走向流行,他們的命運(yùn)隨之改變。在1986年,他們已經(jīng)強(qiáng)大到自己獨(dú)立募股,而且將公司改名為Informix Software。他們的產(chǎn)品包括INFORMIX-SQL 2.00版和INFORMIX-4GL 1.00版,兩個(gè)產(chǎn)品都包含了數(shù)據(jù)庫(kù)引擎和開發(fā)工具(為程序員準(zhǔn)備的I4GL,和為普通用戶準(zhǔn)備的ISQL)。
一系列的產(chǎn)品隨之發(fā)布,包括最初被認(rèn)為是INFORMIX-Turbo的新的查詢引擎。Turbo利用了新式的,比C-ISAM更對(duì)多用戶性能有好處的RSAM。在1989年的4.00版出版后,Turbo被命名為INFORMIX-OnLine(一部分原因是因?yàn)樗试S服務(wù)器運(yùn)行在運(yùn)行時(shí),并且用戶正在修改數(shù)據(jù),而數(shù)據(jù)庫(kù)的備份照樣連貫進(jìn)行),而且最初的基于C-ISAM的服務(wù)器被工具(ISQL和I4GL)所分割開來,并且被命名為INFORMIX-SE(標(biāo)準(zhǔn)版)。在1990年年末的時(shí)候,Informix OnLine 5.00版本問世,而且包括了完整的對(duì)擁有兩步式工作提交和存儲(chǔ)過程的分布式交易的支持。在5.01版中增加了對(duì)觸發(fā)器的支持。
1988年
在1988年,Informix將Innovative Software公司收購(gòu),后者研發(fā)了著名的基于DOS和Unix的辦公系統(tǒng)軟件SmartWare,和具有革新意義基于Apple Macintosh平臺(tái)的的電子制表軟件WingZ。
1994年
隨著Informix在辦公自動(dòng)化領(lǐng)域的失敗,1994年他們重新把精力集中到發(fā)展當(dāng)中的數(shù)據(jù)庫(kù)服務(wù)器市場(chǎng)。同年,在與Sequent Computer Systems的協(xié)作下,Infomix發(fā)布了具備動(dòng)態(tài)可擴(kuò)展結(jié)構(gòu)(DSA)的6.00版的數(shù)據(jù)庫(kù)服務(wù)器。
DSA將產(chǎn)品的核心引擎做了很大改動(dòng),支持了橫向和縱向的并行功能。并且基于和很多先驅(qū)與軟件生產(chǎn)商(比如Sun Microsystems,Hewlett-Packard)都相繼追隨的對(duì)稱多處理系統(tǒng)完美搭配的多線程核心。這兩種并行模式讓產(chǎn)品在擴(kuò)展性上處于市場(chǎng)領(lǐng)先地位,不論是OLTP還是data warehousing。
如今我們熟知的Informix Dynamic Server(當(dāng)初考慮過命名為Obsidian,而后來命名為Informix OnLine Dynamic Server),它的第7版在1994年震撼了市場(chǎng)。當(dāng)時(shí)正式對(duì)稱多處理技術(shù)(SMP)系統(tǒng)剛剛開始盛行,而且Unix已經(jīng)開始變?yōu)榉?wù)器操作系統(tǒng)的主流。第7版基本上成為領(lǐng)先于其他競(jìng)爭(zhēng)者的一代產(chǎn)品,而且不斷地在性能評(píng)測(cè)上勝出。這場(chǎng)勝利的結(jié)果使得Informix在1997年輕而易舉地將Sybase擠下去,登上了數(shù)據(jù)庫(kù)世界的亞軍寶座。
在第7版的成功的基礎(chǔ)上,Informix將他們核心數(shù)據(jù)庫(kù)研發(fā)的投資分為兩個(gè)焦點(diǎn)。第一個(gè)是一開始所謂的XMP(for eXtended Multi-Processing),后來演變成了第8版的生產(chǎn)線,也被稱作 XPS(for eXtended Parallel Server)。這個(gè)焦點(diǎn)致力于data warehousing和高端平臺(tái)的并行處理,包括像IBM的RS-6000/SP這樣的shared-nothing平臺(tái)。
1995年
在1995年收購(gòu)了IIIustra后,第二個(gè)焦點(diǎn)集中在object-relational數(shù)據(jù)庫(kù)(O-R)技術(shù)。Informix在7.x版本的OnLine產(chǎn)品中集成了IIIustra的O-R映射和DataBlades,結(jié)果變成了Informix Universal Server(IUS),或者簡(jiǎn)單地說,就是第9版。
第8版(XPS)和第9版(IUS)都出現(xiàn)在1996年的市場(chǎng)上,令I(lǐng)nformix成為第一個(gè)內(nèi)建O-R支持的“big three”數(shù)據(jù)庫(kù)公司(另外兩個(gè)是Oracle和Sybase)。評(píng)論家們花了很多心思在DataBlades上,DataBlades后來非常流行,繼與IIIustra的合伙后,又有了新架構(gòu)。這讓其他的軟件生產(chǎn)商很著急,Oracle在1997年發(fā)布了支持時(shí)間序列的“嫁接”包,而Sybase讓一家第三方公司為其制作了一個(gè)沒有競(jìng)爭(zhēng)力的附加產(chǎn)品包。
1997年
在市場(chǎng)上的失敗和公司的管理不當(dāng),掩蓋了Informix技術(shù)上的成功。在1997年愚人節(jié)那天,Informix宣布他們第一個(gè)季度的收入比預(yù)期少了10億美元。公司CEO Phillip White把這些差額怪罪在未能投入足夠的精力在核心數(shù)據(jù)庫(kù)業(yè)務(wù)上,而在object-relational技術(shù)上投入了太多資源。緊接著,大量的營(yíng)業(yè)損失和裁員相繼而來。Informix重審了1994年到1996年的利潤(rùn),1990年代中期包括給合伙公司的軟件許可證其實(shí)很大一部分都沒有真正售出到終極用戶手中,這樣不規(guī)范的操作致使公司財(cái)政產(chǎn)生了超過20億美元的泡沫。即使在White 1997年7月離開后,公司在1998年又來了一次財(cái)務(wù)重審。
2001年
從2000年開始,Informix歷史上的大事件再也不是集中在技術(shù)革新上了。從那一年開始,三月份,Informix購(gòu)買了Ardent Software,一家自己本來就是收購(gòu)和合并而來的公司。這次收購(gòu)為他們那個(gè)時(shí)候已經(jīng)很多了的數(shù)據(jù)庫(kù)引擎又增加了兩個(gè)多維引擎UniVerse和UniData(被簡(jiǎn)稱為U2),不僅包括Informix傳統(tǒng)的產(chǎn)品,還有Red Brick的面向datawarehouse的SQL引擎、100% Java版本的SQL,Cloudscape(后來被綁定在J2EE的參考安裝包內(nèi))。
IBM接管
2000年7月,Ardent公司的前任CEO,Peter Gyenes,成為Informix的CEO,并且迅速重整了Informix以讓其成為一個(gè)更誘人的期待別被別人收購(gòu)的“獵物”。這樣重要的一個(gè)決定是要把所有的數(shù)據(jù)庫(kù)引擎技術(shù),和應(yīng)用程序與工具分離開來。
在2001年4月,IBM趁著這次重整,提出了一項(xiàng)來自與沃爾瑪(Informix最大的客戶)的建議,從Informix購(gòu)買了數(shù)據(jù)庫(kù)技術(shù)、品牌、未來開發(fā)計(jì)劃(代碼名為“Arrowhead”的內(nèi)部工程)以及和這些相關(guān)的超過10萬余計(jì)的用戶基礎(chǔ)。剩下的生產(chǎn)應(yīng)用程序和工具的公司重新命名為Ascential Software。在2005年5月,IBM買下了Ascential,在IBM的Information Management Software的投資組合下重新聚合了Informix的資產(chǎn)。
Infomix數(shù)據(jù)庫(kù)版本發(fā)布
經(jīng)過優(yōu)化的新版IDS 11.5代號(hào)“Cheetah 2”,可支持客戶運(yùn)用IBM大型機(jī)系統(tǒng)提供的多種信息管理技巧,增強(qiáng)集群服務(wù)器環(huán)境的業(yè)務(wù)表現(xiàn)。因此IDS可謂是業(yè)界第一款非大型機(jī)級(jí)數(shù)據(jù)服務(wù)器,無論地理位置遠(yuǎn)近或與備份數(shù)據(jù)中心站點(diǎn)間距離長(zhǎng)短,它都能為集群數(shù)據(jù)中心提供低成本持續(xù)數(shù)據(jù)可用性和災(zāi)難恢復(fù)能力。
IBM負(fù)責(zé)數(shù)據(jù)管理市場(chǎng)推廣的副總裁Inhi Cho表示:“目前全球各行各業(yè)、各種規(guī)模的企業(yè)都希望能夠與本地及全球企業(yè)開展不間斷業(yè)務(wù)交易,獲得競(jìng)爭(zhēng)性優(yōu)勢(shì)。而新版IDS卓越的速度、靈活性和高效可幫助我們的客戶企業(yè)在自我發(fā)展的過程中,不斷增強(qiáng)整體業(yè)務(wù)表現(xiàn)并降低相關(guān)成本?!?/span>
新版IDS 11.5在原版基礎(chǔ)上進(jìn)行了多處改良,其領(lǐng)先的穩(wěn)定性和交易性能得到了進(jìn)一步的提升,可更好地支持用戶減少所需的服務(wù)器的數(shù)量和成本。它允許客戶以更少的硬件服務(wù)器管理相同數(shù)量的數(shù)據(jù),因此大大降低了客戶對(duì)軟件許可、管理成本、能源和空間的需求。
依此類推,當(dāng)企業(yè)內(nèi)部擁有數(shù)百或數(shù)千臺(tái)應(yīng)用或系統(tǒng)時(shí),IDS 11.5可為分布廣泛的數(shù)據(jù)管理節(jié)約大量資源、空間和成本。那些依賴不間斷信息訪問、且缺乏管理眾多數(shù)據(jù)庫(kù)專業(yè)IT員工的小型企業(yè)和機(jī)構(gòu)也能從多功能IDS 11.5中受益。
英國(guó)Trafficmaster(一家領(lǐng)先的智能駕駛服務(wù)提供商)的一名項(xiàng)目經(jīng)理Jon Tasker表示:“我們選擇使用Informix將大型數(shù)據(jù)倉(cāng)庫(kù)整合在一起,為我們的客戶提供更智能的衛(wèi)星導(dǎo)航服務(wù)和更短的驅(qū)車路程。我們需要全天候管理350萬條路段上多達(dá)10萬輛汽車的行駛速度相關(guān)數(shù)據(jù),這是一項(xiàng)巨大的數(shù)據(jù)管理挑戰(zhàn),而且這些數(shù)據(jù)還在持續(xù)不斷的增加。在我們的基準(zhǔn)測(cè)試流程中,Informix憑借其優(yōu)異的性能、可擴(kuò)展性和穩(wěn)定性從眾多領(lǐng)先解決方案中脫穎而出?!?/span>
Jenzabar公司負(fù)責(zé)軟件與服務(wù)的副總裁Ben Bassett表示:“Jenzabar對(duì)IBM IDS 11.5中的幾項(xiàng)新功能印象深刻。改進(jìn)的高可用性支持我們這些高等教育市場(chǎng)的客戶更輕松地為委托人提供全天候不間斷的服務(wù)。此外,我們對(duì)IBM在IDS產(chǎn)品線中所展示的承諾感到尤為欣喜。這一系列版本的推出不僅增加了IDS的實(shí)際價(jià)值,反過來還提升了我們對(duì)該產(chǎn)品線,以及我們與IBM之間合作關(guān)系的滿意度。”
作為IBM信息管理軟件組合中的一項(xiàng)戰(zhàn)略要素,IDS 11.5數(shù)據(jù)服務(wù)器可提供出色的快速在線交易處理(OLTP)性能,高可靠性和低成本管理能力。因此,IDS也一舉成為了眾多細(xì)分市場(chǎng)上領(lǐng)先的集成數(shù)據(jù)服務(wù)器,這些市場(chǎng)包括零售、電信、政府/公共領(lǐng)域、旅游和娛樂等。IIDS持續(xù)受到眾多客戶的垂青和歡迎,越來越多的企業(yè)在本企業(yè)中選擇使用IDS。例如,僅北美地區(qū)前十大美國(guó)零售商中就有八家將其用于重要業(yè)務(wù)應(yīng)用;全球有95%的電信公司均采用IDS支持本企業(yè)的數(shù)據(jù)管理。
Infomix數(shù)據(jù)庫(kù)基本概念
1. Page Size
頁(yè)面大小,由系統(tǒng)決定,用戶無權(quán)更改。
2. Mirror { MIRROR }
是否作鏡像處理。
3. Tape Dev. { TAPEDEV}
數(shù)據(jù)備份所用的磁帶設(shè)備,需要選擇好或提前準(zhǔn)備好,如使用硬盤文件的話,創(chuàng)建方法同準(zhǔn)備硬盤空間。
主要參數(shù)有磁帶設(shè)備路徑(可以是硬盤的某個(gè)文件,或/dev/null )、磁帶塊大小(Block Size)及總?cè)萘?Total Tape Size)。
4. Log Tape Dev. {LTAPEDEV}
數(shù)據(jù)庫(kù)邏輯日志備份使用的磁帶設(shè)備。
5. Stage Blob {STAGEBLOB}
INFORMIX-OnLine/Optical為存儲(chǔ)目的地是光盤的blobs所用的blobspace名稱。僅當(dāng)你使用光盤 和INFOMRIX-OnLine/Optical時(shí),才有可能使用此參數(shù)。
6.Root Name {ROOTNAME}
存儲(chǔ)OnLine配置的根數(shù)據(jù)庫(kù)空間(dbspace),在所有數(shù)據(jù)庫(kù)空間中名字唯一。默認(rèn)是rootdbs,建議沿用此名稱。
Primary Path: { ROOTPATH }
rootdbs的路徑,須預(yù)先準(zhǔn)備好。
Root Size: { ROOTSIZE }
規(guī)定rootdbs的大小。建議不要小于50MB。
Root Offset : {ROOTOFFSET }
Root Name 設(shè)備的偏移量。對(duì)于Primary Path指定的設(shè)備是操作系統(tǒng)文件時(shí),必須是0;如果Primary Path是原始設(shè)備(硬盤、或可擦寫光盤等)可以指定起始位置。
8. Mirror Path { MIRRORPATH }
如果Mirror處選擇了Y,此處要求輸入鏡像設(shè)備或文件的絕對(duì)路徑。
Mirror Offset:{ MIRROROFFSET }
鏡像設(shè)備的偏移量。對(duì)于Mirror Path指定的設(shè)備是操作系統(tǒng)文件時(shí),必須是0;如果Mirror Path是原始設(shè)備(硬盤、或可擦寫光盤等)可以指定起始位置。
9. Phy. Log Size { PHYSFILE }
規(guī)定物理日志大?。ù笥诘扔?00K)。初始化后仍可以調(diào)整。
10. Log. Log Size { LOGSIZE }
規(guī)定邏輯日志大小。初始化后不可改變。
最小值=200
最大值=(rootsize-physfile-512-(63*((pagesize)/1024))/logfiles
Number of Logical Logs { LOGFILES }
規(guī)定邏輯日志的個(gè)數(shù)。初始化后可以增加。
11. Logical Log:
記錄數(shù)據(jù)庫(kù)每個(gè)操作的日志,主要是為了在數(shù)據(jù)庫(kù)崩潰后最大限度的恢復(fù)毀壞的數(shù) 據(jù)。Informix OnLine最少有六個(gè)邏輯日志,記錄依次循環(huán)存放。要定期對(duì)其進(jìn)行備份,備份后的日志仍可使用。在當(dāng)全部日志寫滿而仍未進(jìn)行備份時(shí),OnLine將停止運(yùn)轉(zhuǎn),直到有可用的邏輯日志。將數(shù)據(jù)庫(kù)設(shè)為No Log 模式、或邏輯日志備份設(shè)備是/dev/null時(shí)除外。
12.Server Number { SERVERNUM }
數(shù)據(jù)庫(kù)服務(wù)器編號(hào)(0~255)。規(guī)定了共享內(nèi)存存儲(chǔ)中的相對(duì)位置,選擇的數(shù)值并不重要。只是要求本地主機(jī)上的每個(gè)OnLine數(shù)據(jù)庫(kù)服務(wù)器選擇的值都要唯一。該值在網(wǎng)絡(luò)上不一定是唯一的,因?yàn)?值是默認(rèn)設(shè)置。建議你選擇一個(gè)非0值以避免重復(fù)。
13. Server Name { DBSERVERNAME }
規(guī)定與這個(gè)OnLine的特定出現(xiàn)相聯(lián)系的唯一名字。與環(huán)境變量INFORMIXSERVER的值相同。與sqlhosts文件中的一個(gè)通訊協(xié)議相聯(lián)系。
14. Server Aliases { DBSERVERALIASES }
數(shù)據(jù)庫(kù)別名。
15. Max # of Logical Logs { LOGSMAX }
邏輯日志的最大個(gè)數(shù)。主要是為在共享內(nèi)存中為邏輯日志預(yù)留空間。
16. Max # of Locks { LOCKS }
最大的鎖數(shù)。數(shù)據(jù)庫(kù)操作中同時(shí)使用的各類鎖的總數(shù)的上限。
17. Max # of Buffers { BUFFERS }
最大緩沖區(qū)個(gè)數(shù)。
Infomix數(shù)據(jù)庫(kù)常用命令
oninit命令 語(yǔ)法 oninit [-s] [-i] [-p] [-y]
oninit 將系統(tǒng)從off-line模式變?yōu)閛n-line模式
oninit -s 將系統(tǒng)從off-line模式變?yōu)閝uiescent模式
oninit -i 初始化系統(tǒng)
oninit -p 在共享內(nèi)存初始化時(shí),不搜索,刪除臨時(shí)表
oninit -y 對(duì)提示自動(dòng)回答yes
oninit -v 加入這個(gè)選項(xiàng)顯示oninit處理過程
oninit-- 鍵入此命令可以獲得使用幫助
oninit命令用來改變系統(tǒng)的運(yùn)行模式。其中-i選項(xiàng)用于初始化系統(tǒng)的root dbspace。注意,root-dbspace一旦被初始化,則等于整個(gè)數(shù)據(jù)庫(kù)系統(tǒng)被初始化。
如果用戶希望在計(jì)算機(jī)啟動(dòng)時(shí)自動(dòng)自動(dòng)啟動(dòng)動(dòng)態(tài)服務(wù)器系統(tǒng),請(qǐng)?jiān)谙到y(tǒng)初啟文件(在許多UNIX系統(tǒng)中為/etc/rc)中加入oninit命令(不加任何選項(xiàng))。
onmode 命令
語(yǔ)法: onmode [-k] [-m] [-s] [-u] [-y]
onmode -k 執(zhí)行立即shutdown,將系統(tǒng)變?yōu)閛ff-line模式
onmode -m 將系統(tǒng)從quiescent模式變?yōu)閛n-line模式
onmode -s 執(zhí)行g(shù)raceful shutdown
onmode -u 執(zhí)行immediate shutdwon
onmode -y 對(duì)提示自動(dòng)回答yes
onmode 命令同樣用于改變動(dòng)態(tài)服務(wù)器的運(yùn)行模式。除了上述選項(xiàng)外,onmode還有很多與改變系統(tǒng)運(yùn)行模式無關(guān)的選項(xiàng)。
利用onspaces命令創(chuàng)建數(shù)據(jù)空間
語(yǔ)法: onspaces -c [-b] [-d] [-z] [-m] [-o] [-p] [-s] [-t]
-c 創(chuàng)建blobspace或dbspace
-b blobspace blobspace名
-d dbspace dbspace名
-g page size blobpages大小
-m mirror 鏡像設(shè)備設(shè)的全路徑名和偏移量(KB)
-o offset 偏移量(KB)
-p pathname chunk設(shè)備的全路徑名
-s size dbspace大?。↘B)
-t 創(chuàng)建臨時(shí)dbspace
onspaces命令用于創(chuàng)建數(shù)據(jù)空間、臨時(shí)空間和存儲(chǔ)blob數(shù)據(jù)的空間(blobspace)。鍵入onspaces--可以獲得該命令的聯(lián)機(jī)幫助。利用onstat -D或onstat -d可以看到系統(tǒng)中的關(guān)于數(shù)據(jù)空間的重要信息。包括:chunk的狀態(tài)、空閑、每一chunk讀寫的次數(shù)。系統(tǒng)中可能包括的多個(gè)系統(tǒng)空間,特別當(dāng)進(jìn)行數(shù)據(jù)分片后,我們建議用戶最好能利用命令行來創(chuàng)建數(shù)據(jù)空間。
可以利用如下命令創(chuàng)建數(shù)據(jù)空間:
onspaces -c -d datadbs1 -o 0 -p /dev/rrvol3 -s 60000
可以用如下的方式創(chuàng)建臨時(shí)數(shù)據(jù)空間:
onspaces -c -d tempdbs1 -t -o 0 -p /dev/rrvol5 -s 80000
在系統(tǒng)中,臨時(shí)數(shù)據(jù)空間非常重要,通常情況下,應(yīng)將多個(gè)臨時(shí)數(shù)據(jù)空間分布在獨(dú)立的物理設(shè)備上。
利用onspaces命令刪除數(shù)據(jù)空間
增加或刪除chunks
語(yǔ)法: onspaces -a -d [-m] [-o] [-p]
-a spacename 為dbspace新增chunk
-m pathname 鏡像設(shè)備的全路徑名和偏移量(KB)
-o offset 主設(shè)備的偏移量(KB)
-p pathname chunk設(shè)備的全路徑名
-s size chunk大小
-d spacename 刪除chunk
-o offset chunk設(shè)備的偏移量(KB)
onspaces不僅能創(chuàng)建數(shù)據(jù)空間還能刪除數(shù)據(jù)空間、臨時(shí)數(shù)據(jù)空間或存儲(chǔ)blob數(shù)據(jù)的空間。在刪除數(shù)據(jù)空間時(shí),必須首先保證它是無用的,即該數(shù)據(jù)空間上無數(shù)據(jù)庫(kù)或表。
如需刪除數(shù)據(jù)空間,請(qǐng)鍵入如下命令:onspaces -d dbspace_name /blobspace_name
數(shù)據(jù)空間最初由一個(gè)chunk(first chunk)構(gòu)成,一旦其空間用盡,用戶必須追加chunk為了提高系統(tǒng)性能,用戶在為數(shù)據(jù)空間分配chunk時(shí)需要計(jì)算以保證它的大小能適應(yīng)未來的需要,否則在追加chunk的時(shí)候,它與先前的chunk在物理上不一定相鄰,導(dǎo)致增加讀取數(shù)據(jù)的時(shí)間。關(guān)于如何計(jì)算空間需求將在以后章節(jié)中闡述。利用onspaces命令可以對(duì)數(shù)據(jù)空間增加或者刪除chunk,除此之外,利用該命令還可以完成如下任務(wù):?jiǎn)?dòng)鏡像、中止鏡像或改變chunk的狀態(tài)。
例如可以用如下命令為數(shù)據(jù)空間增加chunk:
onspaces -a -d datadbs1 -0 60002 -p /dev/rrvol3 -s 60000
再如可以用如下方式從數(shù)據(jù)空間中刪除chunk:
onspaces -d datadbs1 -o 60002 -p /dev/rrvol3 -s 60000
onparams 命令語(yǔ)法:onparams -a -d -p [-d] [-s] [-l]
-a 新增邏輯日志
-d dbspace 指定日志存放的dbspace
-s size 新增邏輯日志的大小(KB)
-d 刪除邏輯日志
-l logid 指定刪除一個(gè)邏輯日志
-p 改變物理日志
-d dbspace 新物理日志存放的dbspace名
-s size 物理日志大小(KB)
系統(tǒng)在初始化時(shí)自動(dòng)地在root dbspace中創(chuàng)建邏輯日志和物理日志。在DBMS系統(tǒng)中,尤其在OLTP環(huán)境下,數(shù)據(jù)庫(kù)的操作非常頻繁,日志中必須記錄大量的信息,所以用戶最好能將多個(gè)日志文件分布在不同的設(shè)備上。有一種非常簡(jiǎn)單的方法: 即按所需大小創(chuàng)建邏輯日志,同時(shí)創(chuàng)建一個(gè)較小的物理日志,系統(tǒng)初始化完畢后,再將物理日志移至其它設(shè)備。關(guān)于如何確定所需的物理日志的大小,將在以后的章節(jié)詳述。 利用onstat -l命令可以看出系統(tǒng)中所有新增的邏輯日志被標(biāo)識(shí)為A。這些邏輯日志只有在系統(tǒng)進(jìn)行歸檔后才會(huì)真正被使用。為了激活這些邏輯日志有一種簡(jiǎn)單的方法:執(zhí)行一次“偽”歸檔。具體步驟如下:將參數(shù)TAPEDEV設(shè)置為/dev/null然后運(yùn)行一次ontape -s。也可以執(zhí)行onbar -F命令。由于偽歸檔并不真正歸檔系統(tǒng)信息,所以千萬要適時(shí)地對(duì)系統(tǒng)進(jìn)行真正的歸檔操作。
只有在邏輯日志真正無用時(shí)才能將其刪除。利用onstat -l 可以看出所有的空閑日志被標(biāo)記為F。如果邏輯日志中包含事務(wù)回滾或快速恢復(fù)所需的信息,該邏輯日志是不能被刪除的。利用onstat -l命令可以看出接受當(dāng)前事務(wù)的日志被標(biāo)記為C。如果邏輯日志包括最后一個(gè)檢查點(diǎn)記錄,它也是不能被刪除的,只有當(dāng)檢查點(diǎn)記錄被寫入下一個(gè)日志忠并且上一個(gè)日志被備份后,該日志才能被刪除。利用onstat -l命令可以看出包含最后一個(gè)檢查點(diǎn)記錄的日志被標(biāo)記為L(zhǎng)。用戶可以利用onmode -c命令強(qiáng)制寫檢查點(diǎn)記錄直至最后一個(gè)檢查點(diǎn)記錄被寫入所要求的日志為止。