新聞中心
導(dǎo)讀:數(shù)據(jù)庫在沒有啟動(dòng)時(shí),相信很多人都會(huì)為數(shù)據(jù)庫更改名字,然而,由于數(shù)據(jù)文件平時(shí)在數(shù)據(jù)庫運(yùn)行的時(shí)候處于使用狀態(tài),故當(dāng)數(shù)據(jù)庫處于打開狀態(tài)時(shí),管理員是無法重命名數(shù)據(jù)文件名字的。那么一定要更改這個(gè)數(shù)據(jù)文件的名字時(shí),他該如何處理這個(gè)“頑疾”呢?

網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、小程序設(shè)計(jì)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了周口免費(fèi)建站歡迎大家使用!
一、 數(shù)據(jù)庫啟動(dòng)分三步走。
啟動(dòng)一個(gè)Oracle數(shù)據(jù)庫時(shí),都需要經(jīng)過三個(gè)步驟。每完成一個(gè)步驟,數(shù)據(jù)庫就進(jìn)入一個(gè)特定的模式,以便保證數(shù)據(jù)庫處于某種一致性的操作狀態(tài)。管理員可以通過在啟動(dòng)命令中加入?yún)?shù)的方式,來控制數(shù)據(jù)庫的啟動(dòng)步驟。有時(shí)候出于管理方面的需要,數(shù)據(jù)庫的啟動(dòng)過程經(jīng)常需要分布來完成。如數(shù)據(jù)庫管理員進(jìn)行日常的維護(hù)工作,很多都只需要啟動(dòng)第一步或者第二步即可。
第一步:?jiǎn)?dòng)例程。
每一個(gè)啟動(dòng)的數(shù)據(jù)庫至少要對(duì)應(yīng)一個(gè)例程。例程是Oracle用來管理數(shù)據(jù)庫的一個(gè)實(shí)體。它是由一組邏輯內(nèi)存結(jié)構(gòu)和一系列后臺(tái)服務(wù)進(jìn)程所組成。當(dāng)啟動(dòng)數(shù)據(jù)庫時(shí),這些內(nèi)存結(jié)構(gòu)以及服務(wù)進(jìn)程得到分配、初始化和啟動(dòng),以便用戶能夠與數(shù)據(jù)庫進(jìn)行通信。
但是,此時(shí)啟動(dòng)的數(shù)據(jù)庫例程還沒有跟任何數(shù)據(jù)庫進(jìn)行關(guān)聯(lián)。換句話說,即使數(shù)據(jù)庫不存在也可以啟動(dòng)例程。啟動(dòng)例程主要是跟初始化參數(shù)有關(guān),主要是用來初始化數(shù)據(jù)庫的運(yùn)行環(huán)境。如果數(shù)據(jù)庫的初始化參數(shù)文件損壞的話,那么就無法正常啟動(dòng)數(shù)據(jù)庫例程了。也就是說,數(shù)據(jù)庫例程主要牽涉到的是內(nèi)存中的東西,如分配邏輯內(nèi)存結(jié)構(gòu),在內(nèi)存中駐扎一些必要的程序等等。如果數(shù)據(jù)庫只完成了第一步即指啟動(dòng)例程的話,那么數(shù)據(jù)庫管理員可以維護(hù)的工作是非常少的。如數(shù)據(jù)庫管理員此時(shí)需要更改數(shù)據(jù)文件的名字,也是不行的。因?yàn)榇藭r(shí)數(shù)據(jù)庫歷程還沒有裝載數(shù)據(jù)庫,沒有對(duì)應(yīng)到具體的數(shù)據(jù)文件,故此時(shí)管理員還無法訪問數(shù)據(jù)文件,對(duì)其進(jìn)行維護(hù)。
若數(shù)據(jù)庫管理員出于管理方面的需要,只要求啟動(dòng)第一個(gè)步驟的話,那么可以通過參數(shù)來進(jìn)行控制。只要在啟動(dòng)數(shù)據(jù)庫時(shí),輸入startup nomount命令即可。此時(shí)數(shù)據(jù)庫只啟動(dòng)例程,而不裝載數(shù)據(jù)庫。Oracle數(shù)據(jù)庫系統(tǒng)只會(huì)讀取參數(shù)文件中的內(nèi)容,只是為歷程創(chuàng)建各種邏輯內(nèi)存結(jié)構(gòu)和后臺(tái)服務(wù)進(jìn)程。此時(shí)數(shù)據(jù)庫管理員還不能夠使用數(shù)據(jù)庫中的任何文件。
第二步:裝載數(shù)據(jù)庫。
在啟動(dòng)例程時(shí)所用到的參數(shù)文件中,記載了數(shù)據(jù)庫控制文件的存儲(chǔ)位置與相關(guān)信息。當(dāng)數(shù)據(jù)庫在啟動(dòng)過程中企圖裝載數(shù)據(jù)庫時(shí),數(shù)據(jù)庫系統(tǒng)會(huì)根據(jù)初始化參數(shù)文件中記載的控制文件信息去找到這個(gè)控制文件,并打開它。在這個(gè)控制文件中則記錄著數(shù)據(jù)庫的名稱、數(shù)據(jù)文件的位置名稱等關(guān)于數(shù)據(jù)庫物理結(jié)構(gòu)方面的信息。這里要注意,此時(shí)數(shù)據(jù)庫系統(tǒng)會(huì)去讀取這些信息,但是不并會(huì)去代開這些數(shù)據(jù)文件。只是為下一步打開數(shù)據(jù)庫做好準(zhǔn)備。
在裝載數(shù)據(jù)庫時(shí),系統(tǒng)不會(huì)去讀取數(shù)據(jù)文件和重做日志文件的內(nèi)容。也就是說,此時(shí)數(shù)據(jù)庫仍然是出于關(guān)閉狀態(tài)的。用戶無法與數(shù)據(jù)庫建立連接,無法訪問數(shù)據(jù)庫并對(duì)數(shù)據(jù)庫進(jìn)行更改。顯然,如果只是裝載數(shù)據(jù)庫而沒有打開數(shù)據(jù)庫的話,對(duì)于普通用戶來說是沒有多大作用的。但是對(duì)于數(shù)據(jù)庫管理員來說此時(shí)他發(fā)展的舞臺(tái)就很大了。因?yàn)橹谎b載數(shù)據(jù)庫而沒有打開它,數(shù)據(jù)庫管理員已經(jīng)可以通過命令來維護(hù)數(shù)據(jù)庫。例如,裝載數(shù)據(jù)庫但是還沒有打開數(shù)據(jù)文件的狀態(tài)下修改數(shù)據(jù)文件的名字。
如果管理員需要裝載數(shù)據(jù)庫而不打開數(shù)據(jù)庫,則可以利用startup mount命令。這個(gè)命令主要來告訴數(shù)據(jù)庫系統(tǒng),啟動(dòng)歷程并裝載數(shù)據(jù)庫,但是不打開數(shù)據(jù)庫。此時(shí)數(shù)據(jù)庫系統(tǒng)會(huì)打開控制文件并讀取數(shù)據(jù)庫名稱、數(shù)據(jù)文件的位置和名稱以及其他的一些相關(guān)信息。在這個(gè)模式下,數(shù)據(jù)庫管理員已經(jīng)可以對(duì)數(shù)據(jù)庫進(jìn)行一些維護(hù)。而且值得注意的是,有些工作只有在這種狀態(tài)下才能夠進(jìn)行。通常情況下,若只是裝載數(shù)據(jù)庫而沒有啟動(dòng)數(shù)據(jù)庫的情況下,可以進(jìn)行如下的日常維護(hù)工作。一是上面提到的對(duì)數(shù)據(jù)庫的數(shù)據(jù)文件進(jìn)行重命名;二是維護(hù)重做日志,如添加、刪除日志文件或者更改重做日志文件的名字;三是執(zhí)行數(shù)據(jù)庫的完全恢復(fù)操作;四是改變數(shù)據(jù)庫的歸檔模式等等。
第三步:打開數(shù)據(jù)庫。
通常情況下,只裝載數(shù)據(jù)庫但是還沒有打開數(shù)據(jù)庫的情況下,應(yīng)用程序時(shí)無法連接到數(shù)據(jù)庫系統(tǒng)的。只有利用Open選項(xiàng)將數(shù)據(jù)庫設(shè)置為打開狀態(tài)后,應(yīng)用程序才能夠正常訪問后臺(tái)數(shù)據(jù)庫系統(tǒng)。用戶才能夠查詢、更改數(shù)據(jù)庫中的記錄。在打開數(shù)據(jù)庫的過程中,例程將會(huì)根據(jù)控制文件中的信息找到對(duì)應(yīng)的重做日志文件、數(shù)據(jù)文件等等。也就是說,第一步啟動(dòng)的例程會(huì)打開所有聯(lián)機(jī)狀態(tài)的數(shù)據(jù)文件和重做日志文件。這里要注意,只要控制文件中列出的任何一個(gè)重做日志文件或者數(shù)據(jù)文件損壞無法正常打開的話,則數(shù)據(jù)庫也將無法正常 打開。此時(shí)數(shù)據(jù)庫管理員需要進(jìn)行數(shù)據(jù)庫恢復(fù)才能夠讓數(shù)據(jù)庫重新運(yùn)轉(zhuǎn)。
從這里也可以看出,如果數(shù)據(jù)庫系統(tǒng)可以正常裝載數(shù)據(jù)庫并不一定表示數(shù)據(jù)文件與重做日志文件是正常的。因?yàn)樵谘b載數(shù)據(jù)庫的過程中,只讀取了這些文件到存儲(chǔ)位置與名字等等,并不會(huì)去判斷這些文件是否可以使用。只有在試圖打開數(shù)據(jù)庫的時(shí)候,系統(tǒng)才會(huì)去判斷這些文件的可用性。此時(shí)數(shù)據(jù)文件、日志文件等等以處于打開狀態(tài),故管理員是無法在此時(shí)對(duì)這些文件進(jìn)行維護(hù)操作的,如位置移動(dòng)、刪除、重新能命名等等。
若要打開數(shù)據(jù)庫,則可以采用Startup Open命令。這個(gè)命令告訴數(shù)據(jù)庫系統(tǒng)啟動(dòng)例程、裝載數(shù)據(jù)庫并且把數(shù)據(jù)庫設(shè)置為打開狀態(tài)。將數(shù)據(jù)庫設(shè)置為打開狀態(tài)后,任何具有Create Session權(quán)限的用戶都能夠連接到數(shù)據(jù)庫并對(duì)數(shù)據(jù)庫進(jìn)行日常的訪問。
這里要注意一點(diǎn),以上這個(gè)三個(gè)步驟并不是每次啟動(dòng)數(shù)據(jù)庫都要如此一步步的走。如可以直接使用Startup命令,讓Oracle系統(tǒng)直接把數(shù)據(jù)庫啟動(dòng)到打開狀態(tài)。管理員也可以利用Startup Mount命令直接啟動(dòng)到裝載數(shù)據(jù)庫的狀態(tài)。具體要如何啟動(dòng),主要是要看管理員維護(hù)數(shù)據(jù)庫的目的。如需要把重做日志移動(dòng)到另外一個(gè)地方時(shí),那么在啟動(dòng)數(shù)據(jù)庫的時(shí)候就只能夠啟動(dòng)到第二步,而不能夠直接啟動(dòng)到第三步。
另外,數(shù)據(jù)庫啟動(dòng)狀態(tài)的不同,其對(duì)應(yīng)的動(dòng)態(tài)性能視圖中的內(nèi)容也有所差異。如數(shù)據(jù)庫處于裝載數(shù)據(jù)庫的狀態(tài)下,管理員可以訪問那些與SGA區(qū)相關(guān)的數(shù)據(jù)字典視圖,而且還可以訪問那些與控制文件相關(guān)的數(shù)據(jù)字典視圖。但是此時(shí)動(dòng)態(tài)性能視圖中是找不到數(shù)據(jù)文件或者重做日志文件相關(guān)的信息。
二、 分步啟動(dòng)數(shù)據(jù)庫以重命名數(shù)據(jù)文件。
那么如果現(xiàn)在數(shù)據(jù)庫處于打開狀態(tài),數(shù)據(jù)庫管理員該如何來重命名數(shù)據(jù)文件呢?其實(shí)步驟比較簡(jiǎn)單。只需要簡(jiǎn)單三個(gè)步驟就可以完成。
一是利用Startup Nomount命令把數(shù)據(jù)庫啟動(dòng)到數(shù)據(jù)庫裝載狀態(tài)。由于現(xiàn)在數(shù)據(jù)庫處于打開狀態(tài),數(shù)據(jù)文件正在使用中,為此管理員不能夠更改數(shù)據(jù)文件的名字。所以此時(shí)數(shù)據(jù)庫管理員需要先把數(shù)據(jù)庫關(guān)閉然后啟動(dòng)到數(shù)據(jù)庫裝載狀態(tài)。此時(shí)數(shù)據(jù)文件沒有被使用,故可以對(duì)其進(jìn)行重命名。除了重命名之外,還可以移動(dòng)數(shù)據(jù)文件的位置。
二是修改數(shù)據(jù)文件的名字。注意數(shù)據(jù)文件名字更改之后,同時(shí)要更改控制文件中的內(nèi)容。否則的話,在打開數(shù)據(jù)庫的時(shí)候,就會(huì)因?yàn)檎也坏娇刂莆募兴谐龅臄?shù)據(jù)文件而導(dǎo)致啟動(dòng)的錯(cuò)誤。同理,如果要移動(dòng)數(shù)據(jù)文件的位置也是做類似的操作。
三是重新打開數(shù)據(jù)庫。然后數(shù)據(jù)庫管理員重新使用Startup Open命令來打開數(shù)據(jù)庫。此時(shí)就完成了數(shù)據(jù)文件的重命名工作了.
通過上文的步驟進(jìn)行數(shù)據(jù)庫的重命名就能很輕松的完成,相信現(xiàn)在數(shù)據(jù)庫的重命名已經(jīng)難不倒大家。
【編輯推薦】
- 網(wǎng)站整體優(yōu)化之?dāng)?shù)據(jù)庫優(yōu)化
- 拒絕黑客巧設(shè)網(wǎng)站目錄與數(shù)據(jù)庫權(quán)限
- 淺析MySQL數(shù)據(jù)庫授權(quán)原則
分享題目:分步啟動(dòng)數(shù)據(jù)庫以重命名數(shù)據(jù)文件
文章轉(zhuǎn)載:http://fisionsoft.com.cn/article/djpsioj.html


咨詢
建站咨詢
