Oracle數(shù)據(jù)庫(kù)實(shí)例的創(chuàng)建、刪除與修改_第1頁(yè)
Oracle數(shù)據(jù)庫(kù)實(shí)例的創(chuàng)建、刪除與修改_第2頁(yè)
Oracle數(shù)據(jù)庫(kù)實(shí)例的創(chuàng)建、刪除與修改_第3頁(yè)
Oracle數(shù)據(jù)庫(kù)實(shí)例的創(chuàng)建、刪除與修改_第4頁(yè)
Oracle數(shù)據(jù)庫(kù)實(shí)例的創(chuàng)建、刪除與修改_第5頁(yè)
已閱讀5頁(yè),還剩6頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、Oracle數(shù)據(jù)庫(kù)實(shí)例的創(chuàng)建、刪除、修改以SUSE10SP2、Oracle10gR2為例。 本文中的數(shù)據(jù)庫(kù)實(shí)例這一稱謂應(yīng)該換做數(shù)據(jù)庫(kù)更為準(zhǔn)確,數(shù)據(jù)庫(kù)能夠理解為是一個(gè)物理的靜態(tài)概念,要緊包括一些物理存在的數(shù)據(jù)庫(kù)文件,而數(shù)據(jù)庫(kù)實(shí)例則是一個(gè)動(dòng)態(tài)概念,包括一些內(nèi)存區(qū)域以及若干進(jìn)程,數(shù)據(jù)庫(kù)實(shí)例是對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作的執(zhí)行者。(20090714修改) 安裝完Oracle數(shù)據(jù)庫(kù)系統(tǒng)的安裝后,需要?jiǎng)?chuàng)建數(shù)據(jù)庫(kù)實(shí)例才能真正開(kāi)始使用Oracle數(shù)據(jù)庫(kù)服務(wù)。 總結(jié)起來(lái),Oracle有三種創(chuàng)建數(shù)據(jù)庫(kù)實(shí)例的方法。 第一種,最常用也最簡(jiǎn)單,那確實(shí)是通過(guò)DBCA(Database Configuration Assistant)

2、,這是Oralce提供的一個(gè)圖形界面的數(shù)據(jù)庫(kù)實(shí)例配置工具,通過(guò)它能夠創(chuàng)建、刪除和修改數(shù)據(jù)庫(kù)實(shí)例,它的使用也比較簡(jiǎn)單、易明白,交互式的圖形界面操作,特不準(zhǔn)確有效的提示與配置,是一個(gè)比較方便的創(chuàng)建數(shù)據(jù)庫(kù)實(shí)例的方式。 按照DBCA給出的提示,專門容易創(chuàng)建一個(gè)新數(shù)據(jù)庫(kù)實(shí)例。 在創(chuàng)建數(shù)據(jù)庫(kù)的時(shí)候,DBCA還提供了兩個(gè)選項(xiàng),讓你能夠依照剛剛設(shè)置好的參數(shù)生成一個(gè)數(shù)據(jù)庫(kù)實(shí)例模板和一份數(shù)據(jù)庫(kù)實(shí)例創(chuàng)建腳本。這兩個(gè)東西是特不行,特不有用的東西,數(shù)據(jù)庫(kù)模板由Oracle自己治理維護(hù),差不多創(chuàng)建好的數(shù)據(jù)庫(kù)實(shí)例模板能夠在DBCA圖形程序新建數(shù)據(jù)庫(kù)實(shí)例時(shí)作為模板來(lái)使用,另外在DBCA使用responseFile文件或者命令

3、行參數(shù)創(chuàng)建數(shù)據(jù)庫(kù)時(shí)也需要用到(見(jiàn)后面介紹);數(shù)據(jù)庫(kù)創(chuàng)建腳本是一組腳本,包括shell腳本和sql腳本,這些腳本共同實(shí)現(xiàn)一個(gè)功能,那確實(shí)是按照你之前在DBCA中設(shè)置好的那樣創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)實(shí)例(后面也會(huì)有介紹),你需要做的只是將這些腳本在你的代碼中調(diào)用起來(lái)。因此,你也能夠選擇只生成數(shù)據(jù)庫(kù)模板或者數(shù)據(jù)庫(kù)腳本,而不用去創(chuàng)建一個(gè)確實(shí)數(shù)據(jù)庫(kù)(這通常專門費(fèi)時(shí)刻)。 DBCA是一個(gè)特不強(qiáng)大的工具,上面看到的只是DBCA最常用的創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)實(shí)例的使用,事實(shí)上DBCA還提供另外兩種使用方法,分不是responseFile和命令行帶參調(diào)用。 先講DBCA的responseFile使用方法,responseFile

4、那個(gè)東東并不陌生,前文講的Oracle自動(dòng)安裝確實(shí)是使用responseFile完成的,DBCA的responseFile使用方法和Oracle安裝程序的responseFile使用方法差不多一致。但DBCA的responseFile的來(lái)源只能是Oracle安裝包中提供的模板文件,而不能向Oracle安裝程序的responseFile一樣,先自己record一個(gè),然后再用那個(gè)record去指導(dǎo)Oracle的自動(dòng)安裝。從Oracle安裝包中獵取到DBCA的responseFile模板文件后,你能夠依照自己的需要編輯修改該模板文件,以完成對(duì)數(shù)據(jù)庫(kù)實(shí)例的某些參數(shù)設(shè)置(DBCA圖形界面所提供的參數(shù)設(shè)置

5、,responseFile中都能夠設(shè)置,而且該responseFile模板文件的注釋寫的專門好,你完全不用擔(dān)心無(wú)法搞定那些繁雜的數(shù)據(jù)庫(kù)實(shí)例參數(shù)設(shè)置,贊Oralce一個(gè)?。?。該模板文件在Oracle安裝包中的位置一般在$ORACLE_PACKAGE/response目錄下。 有了responseFile之后,你只需在調(diào)用DBCA的時(shí)候指定responseFile的位置和另外一些參數(shù): dbca -silent|-progressOnly -responseFile responseFile名稱 其中-silent|-progressOnly選項(xiàng)意義和Oracle安裝程序命令行參數(shù)中的同名選項(xiàng)一樣

6、,表示完全字符界面自動(dòng)安裝或者帶圖形提示界面的半自動(dòng)化安裝。 responseFile名稱因此確實(shí)是responseFile的具體位置了。 然而,有一點(diǎn)不是專門好,那確實(shí)是使用DBCA的responseFile方式創(chuàng)建Oracle數(shù)據(jù)庫(kù)實(shí)例,需要事先差不多存在一個(gè)數(shù)據(jù)庫(kù)實(shí)例模板了,在responseFile中再指定該數(shù)據(jù)庫(kù)實(shí)例模板名,然后DBCA再依據(jù)那個(gè)已有的數(shù)據(jù)庫(kù)實(shí)例模板完成新數(shù)據(jù)庫(kù)實(shí)例的創(chuàng)建,因此就會(huì)有前面講到的DBCA圖形界面創(chuàng)建數(shù)據(jù)庫(kù)實(shí)例時(shí)提供生成數(shù)據(jù)庫(kù)實(shí)例模板的選項(xiàng)(數(shù)據(jù)庫(kù)實(shí)例模板也能夠從一個(gè)已有數(shù)據(jù)庫(kù)實(shí)例生成),確實(shí)是在這要用到的。 從上面調(diào)用DBCA使用responseFile

7、的命令中,應(yīng)該差不多看到了DBCA是提供一些命令行參數(shù)選項(xiàng)的,事實(shí)上DBCA提供的命令行參數(shù)選項(xiàng)遠(yuǎn)比你想象的強(qiáng)大,甚至能夠這么講,所有DBCA圖形界面和responseFile能夠辦到的事,通過(guò)DBCA豐富的命令行參數(shù)選項(xiàng)都能夠辦到。你在DBCA圖形界面上設(shè)置的參數(shù)或者在responseFile中指定的參數(shù)值都能夠通過(guò)DBCA的命令行參數(shù)選項(xiàng)來(lái)進(jìn)行設(shè)置,因此你完全能夠只通過(guò)DBCA的命令行帶參調(diào)用來(lái)完成一個(gè)數(shù)據(jù)庫(kù)實(shí)例的創(chuàng)建(因此也包括刪除、修改數(shù)據(jù)庫(kù)實(shí)例等所有DBCA圖形界面所能提供的功能)。事實(shí)上,我更情愿如此認(rèn)為,DBCA的responseFile應(yīng)用也是一種DBCA命令行帶參調(diào)用的使用。

8、需要注意的是,當(dāng)DBCA的命令行參數(shù)和responseFile同時(shí)設(shè)置一個(gè)參數(shù)時(shí),命令行參數(shù)的優(yōu)先級(jí)是比responseFile要高的。另外,使用DBCA命令行帶參調(diào)用新建數(shù)據(jù)庫(kù)實(shí)例和使用responseFile新建數(shù)據(jù)庫(kù)實(shí)例一樣,也是需要事先差不多存在一個(gè)數(shù)據(jù)庫(kù)實(shí)例模板,才能完成新數(shù)據(jù)庫(kù)實(shí)例的創(chuàng)建。一份特不詳細(xì)的DBCA所有命令行參數(shù)選項(xiàng)列表,你能夠通過(guò)執(zhí)行dbca -help獲得。 到現(xiàn)在你可能差不多發(fā)覺(jué),DBCA圖形界面、DBCA的responseFile使用以及DBCA的命令行帶參調(diào)用,事實(shí)上是三個(gè)分不具備完全數(shù)據(jù)庫(kù)實(shí)例設(shè)置功能的工具或者接口,分不對(duì)應(yīng)不同的應(yīng)用場(chǎng)景,它們能夠滿足你幾乎

9、所有的應(yīng)用需求(使用如此的工具來(lái)關(guān)心構(gòu)建自己的軟件真是特不滿意的一件情況,再贊Oracle一個(gè)?。?。 第二種是通過(guò)腳本(是否稱為命令行方式更合適,下文描述的腳本方式事實(shí)上差不多上命令行方式的非交互式方法,或者講命令行的自動(dòng)化方式,但事實(shí)上所有腳本方式都能夠?qū)hell腳本或sql腳本中的shell命令、sqlplus命令拆分出來(lái),手工在shell中或者sqlplus界面中進(jìn)行交互式的輸入執(zhí)行,這能夠稱為命令行的手工方式)來(lái)完成數(shù)據(jù)庫(kù)實(shí)例的代碼中自動(dòng)創(chuàng)建。那個(gè)地點(diǎn)講的腳本包括shell腳本和sql腳本,這種方式能夠講是最適合與編程結(jié)合的,因?yàn)檫@些shell腳本或者sql腳本都能夠直接在shell

10、命令中調(diào)用執(zhí)行,因此能夠?qū)iT好與shell編程相結(jié)合。而這事實(shí)上是基于一個(gè)特不重要的事實(shí),即Oracle提供了一個(gè)交互式的命令行工具sqlplus(類似與DB2的db2cmd),那個(gè)工具能夠認(rèn)為是一個(gè)Oracle數(shù)據(jù)庫(kù)治理工具,通過(guò)它能夠執(zhí)行一些Oracle的數(shù)據(jù)庫(kù)治理命令,來(lái)完成一些數(shù)據(jù)庫(kù)治理工作(這因此就包括數(shù)據(jù)庫(kù)實(shí)例的創(chuàng)建),同時(shí)你也能夠把它當(dāng)作一個(gè)SQL語(yǔ)句執(zhí)行器,直接在里邊執(zhí)行你想要執(zhí)行的SQL語(yǔ)句或者存儲(chǔ)過(guò)程等,并獵取執(zhí)行結(jié)果。同時(shí),更重要的是,sqlplus能夠直接在shell命令行中進(jìn)行非交互式的調(diào)用執(zhí)行(通常是調(diào)用執(zhí)行一段sqlplus語(yǔ)句,或者是一個(gè)由一些sqlplus語(yǔ)句

11、組成的sql腳本,我所講的sqlplus語(yǔ)句包括Oracle數(shù)據(jù)庫(kù)治理維護(hù)命令、SQL語(yǔ)句和存儲(chǔ)過(guò)程等),這就為在shell編程中使用sqlplus完成數(shù)據(jù)庫(kù)實(shí)例自動(dòng)創(chuàng)建工作提供了可能。 shell命令行中非交互式調(diào)用sqlplus執(zhí)行一段sqlplus語(yǔ)句是利用shell編程中重定向命令的一個(gè)特性,即分隔符重定向輸入。一般用法如下: command(換行)內(nèi)容 (換行)內(nèi)容 自定義分隔符 shell中遇到則會(huì)自動(dòng)將下一個(gè)單詞認(rèn)作分隔符,并將分隔符后面的文本當(dāng)作command命令執(zhí)行的內(nèi)容傳遞給command依次全部執(zhí)行直至遇到下一個(gè)分隔符單詞才結(jié)束。那個(gè)地點(diǎn)的分隔符能夠是任意自定義的單詞,通

12、常使用EOF,舉例: sqlplus / as sysdbastart sql腳本絕對(duì)路徑; SQLsql腳本絕對(duì)路徑; 而在shell命令行中能夠使用來(lái)完成sqlplus對(duì)sql腳本的調(diào)用執(zhí)行,舉例: sqlplus / as sysdba ./MySQL.sql 以上命令會(huì)調(diào)用sqlplus執(zhí)行當(dāng)前目錄下的MySQL.sql腳本。 使用腳本來(lái)完成數(shù)據(jù)庫(kù)實(shí)例的創(chuàng)建工作,也分為兩種情況。 一種是誠(chéng)如前文所述的那樣,在使用DBCA圖形工具創(chuàng)建數(shù)據(jù)庫(kù)實(shí)例的同時(shí)生成一份數(shù)據(jù)庫(kù)實(shí)例創(chuàng)建腳本(包括若干shell腳本和sql腳本),那么你就能夠使用這份腳本,在shell中進(jìn)行調(diào)用,完成數(shù)據(jù)庫(kù)實(shí)例的代碼自動(dòng)

13、創(chuàng)建。使用這份數(shù)據(jù)庫(kù)實(shí)例創(chuàng)建腳本創(chuàng)建的新數(shù)據(jù)庫(kù)實(shí)例和原數(shù)據(jù)庫(kù)實(shí)例是完全一樣,因此,你能夠?qū)⑸傻哪_本進(jìn)行修改,以完成你對(duì)數(shù)據(jù)庫(kù)實(shí)例的某些設(shè)置,然而請(qǐng)?jiān)谀銓?duì)腳本內(nèi)容差不多足夠了解,同時(shí)明白你自己在干什么的情況下修改腳本,否則你專門有可能使用修改后的腳本無(wú)法正確創(chuàng)建數(shù)據(jù)庫(kù)實(shí)例。這種方法中shell腳本對(duì)sqlplus的使用,更多的是使用sqlplus來(lái)執(zhí)行一些Oracle生成的sql腳本(這些sql腳本的內(nèi)容是確實(shí)是一些sqlplus語(yǔ)句的集合,它們的任務(wù)確實(shí)是完成數(shù)據(jù)庫(kù)實(shí)例的創(chuàng)建以及設(shè)置)。 另一種情況則是不依靠DBCA生成的腳本,完全由自己來(lái)編寫實(shí)現(xiàn)一份shell腳本,在腳本中你能夠調(diào)用sql

14、plus執(zhí)行一段sqlplus語(yǔ)句或者其它一些sql腳本,以完成數(shù)據(jù)庫(kù)實(shí)例的創(chuàng)建和設(shè)置,這完全取決于你的實(shí)現(xiàn);而最常用的用來(lái)創(chuàng)建數(shù)據(jù)庫(kù)實(shí)例的一個(gè)方法確實(shí)是在sqlplus中使用create database語(yǔ)句,create database語(yǔ)句提供了許多豐富的選項(xiàng)和參數(shù)設(shè)置,確保你能完全創(chuàng)建一個(gè)自己所需要的數(shù)據(jù)庫(kù)實(shí)例。因此,還有一些其它方法能夠創(chuàng)建數(shù)據(jù)庫(kù)實(shí)例,比如調(diào)用執(zhí)行oracle提供某些存儲(chǔ)過(guò)程等。 至于create database語(yǔ)句的詳細(xì)介紹能夠參考o(jì)racle的sql reference。 第三種嚴(yán)格來(lái)講不能算作一種創(chuàng)建Oracle數(shù)據(jù)庫(kù)實(shí)例的方法,它是通過(guò)已有的數(shù)據(jù)庫(kù)實(shí)例為基礎(chǔ)

15、來(lái)完成新數(shù)據(jù)庫(kù)實(shí)例的創(chuàng)建的。這種方法是首先通過(guò)第一種或者第二種方法來(lái)創(chuàng)建好一個(gè)數(shù)據(jù)庫(kù)實(shí)例,然后將該數(shù)據(jù)庫(kù)實(shí)例的物理文件進(jìn)行備份,然后直接使用備份的物理文件恢復(fù)出一個(gè)與原數(shù)據(jù)庫(kù)實(shí)例完全一樣新的數(shù)據(jù)庫(kù)實(shí)例,因此這種方法需要和第一、二種方法相配合才能使用。這種方法事實(shí)上差不多屬于Oracle數(shù)據(jù)備份與恢復(fù)的范疇了,確實(shí)是Oracle數(shù)據(jù)備份恢復(fù)方式中的物理備份恢復(fù),因此這種方法能夠叫做物理恢復(fù)法。 簡(jiǎn)單介紹物理恢復(fù)法,首先將一個(gè)差不多存在數(shù)據(jù)庫(kù)實(shí)例(最好已關(guān)閉)進(jìn)行物理備份,所謂物理備份事實(shí)上確實(shí)是復(fù)制該數(shù)據(jù)庫(kù)實(shí)例所使用的操作系統(tǒng)文件,這些文件要緊包括DataFiles、RedoLogs、Contr

16、olFiles和UndoFiles(這些文件一般存在于$ORACLE_HOME/oradata目錄下),進(jìn)行數(shù)據(jù)庫(kù)實(shí)例恢復(fù)的時(shí)候只需將備份的操作系統(tǒng)文件復(fù)制到新的oradata目錄下即可,能夠直接啟動(dòng)使用恢復(fù)后的該數(shù)據(jù)庫(kù)實(shí)例。不難看出,這種備份恢復(fù)是依靠于操作系統(tǒng)平臺(tái)的。 詳細(xì)的物理備份和恢復(fù)介紹能夠參考o(jì)racle的backup and recovery basics以及backup and recovery advanced users guide。 講完了數(shù)據(jù)庫(kù)實(shí)例的創(chuàng)建,現(xiàn)在來(lái)講講數(shù)據(jù)庫(kù)實(shí)例的刪除和修改。事實(shí)上介紹完了數(shù)據(jù)庫(kù)實(shí)例的創(chuàng)建,數(shù)據(jù)庫(kù)實(shí)例的刪除和修改就特不簡(jiǎn)單了。差不多和前文數(shù)

17、據(jù)庫(kù)實(shí)例創(chuàng)建的內(nèi)容相一致,且比較而言更簡(jiǎn)單。 數(shù)據(jù)庫(kù)實(shí)例的刪除從上文中數(shù)據(jù)庫(kù)實(shí)例的創(chuàng)建不難得到,大致有兩種方法,DBCA工具和命令行方式。 DBCA工具除了能夠用來(lái)創(chuàng)建數(shù)據(jù)庫(kù)實(shí)例,因此也能夠用來(lái)刪除數(shù)據(jù)庫(kù)實(shí)例了,且同樣能夠用使用responseFile或者命令行帶參調(diào)用等方法來(lái)完成數(shù)據(jù)庫(kù)實(shí)例的刪除,請(qǐng)參考數(shù)據(jù)庫(kù)實(shí)例創(chuàng)建部分。 命令行刪除數(shù)據(jù)庫(kù)實(shí)例的方式,嚴(yán)格來(lái)講,是使用一組sqlplus命令來(lái)完成數(shù)據(jù)庫(kù)實(shí)例的刪除,這組sqlplus命令能夠組織在一個(gè)sql腳本中,然后在shell命令行中調(diào)用sqlplus程序來(lái)執(zhí)行該sql腳本,或者直接在shell命令行中利用shell程序重定向特性調(diào)用sqlplus依次完

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論