国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

優(yōu)化Oracle停機(jī)時(shí)間及數(shù)據(jù)庫(kù)恢復(fù)簡(jiǎn)介

瀏覽:34日期:2023-11-13 09:53:36
這里會(huì)討論令Oracle停機(jī)時(shí)間最小化的步驟。各種形式的停機(jī)--計(jì)劃的或者是非計(jì)劃的--總是不斷地發(fā)生,一個(gè)DBA應(yīng)該有正確的備份策略,這樣在數(shù)據(jù)庫(kù)出現(xiàn)問(wèn)題時(shí)就可以更快地恢復(fù)。 以下是假定的備份策略和數(shù)據(jù)庫(kù)的運(yùn)作條件: 1、控制文件是鏡像的。 2、數(shù)據(jù)庫(kù)運(yùn)行在archivelog模式。 3、每個(gè)星期都進(jìn)行冷備份。 4、每日都進(jìn)行熱備份。 5、每日都進(jìn)行一次全數(shù)據(jù)庫(kù)導(dǎo)出。 事件1:完整的數(shù)據(jù)庫(kù)重構(gòu) 在這種情形下,你可以使用全數(shù)據(jù)庫(kù)導(dǎo)出或者冷熱備份結(jié)合的方式來(lái)重構(gòu)數(shù)據(jù)庫(kù)。要注重的是無(wú)論你選擇哪種方式,在線(xiàn)redo log中的事務(wù)都會(huì)丟失。 事件2:恢復(fù)部分的表空間 可以使用以下的步驟來(lái)恢復(fù): 1、以restrict模式啟動(dòng)數(shù)據(jù)庫(kù)。 2、重新創(chuàng)建表空間。 3、使用最新的全數(shù)據(jù)庫(kù)導(dǎo)出來(lái)導(dǎo)入,并且使用ignore=y的選項(xiàng)。 4.關(guān)閉并且重新以normal的模式啟動(dòng)數(shù)據(jù)庫(kù)實(shí)例。 事件3:丟失一般的數(shù)據(jù)文件 丟失一般數(shù)據(jù)文件的恢復(fù)步驟根據(jù)所丟失的數(shù)據(jù)文件包含的表空間類(lèi)型而定;例如:回滾段,用戶(hù)表空間,索引表空間或者是只讀的表空間、你可能會(huì)碰到以下的錯(cuò)誤: . 嘗試啟動(dòng)數(shù)據(jù)庫(kù)并且碰到錯(cuò)誤的信息ORA-1157, ORA-1110,可能還有一個(gè)操作系統(tǒng)的錯(cuò)誤; . 嘗試以normal或者immediate的模式關(guān)閉數(shù)據(jù)庫(kù),可能會(huì)碰到ORA-1116, ORA-1110的錯(cuò)誤信息,還有一個(gè)系統(tǒng)錯(cuò)誤; 以下的步驟可以用作恢復(fù): 1、關(guān)閉數(shù)據(jù)庫(kù)。 2、由熱備份中恢復(fù)丟失的數(shù)據(jù)文件。 3、Startup mount數(shù)據(jù)庫(kù)。 4、執(zhí)行以下的查詢(xún)來(lái)得到所有你的在線(xiàn)redo log文件和它們相應(yīng)的次序和首次修改號(hào): SELECT X.GROUP#, MEMBER, SEQUENCE#, FIRST_CHANGE#FROM V$LOG X, V$LOGILE YWHERE X.GROUP# = Y.GROUP#;5、假如得到的CHANGE#比在線(xiàn)redo log最小的FIRST_CHANGE# 還小,那么該文件不能被完全恢復(fù),你可以有兩個(gè)選擇: . 假如可以接受丟失最近一次冷備份以來(lái)的數(shù)據(jù)庫(kù)修改,裝入備份并且繼續(xù)恢復(fù); . 假如不能接受丟失數(shù)據(jù)庫(kù)的修改,那么必須重新創(chuàng)建表空間; 6、通過(guò)使用存檔和在線(xiàn)的redo log來(lái)恢復(fù)數(shù)據(jù)文件。 7、打開(kāi)數(shù)據(jù)庫(kù), 事件4:恢復(fù)一個(gè)非凡的表 可以采用以下的步驟恢復(fù): 1、使用最近的一次全數(shù)據(jù)庫(kù)導(dǎo)出來(lái)導(dǎo)入表,并且使用owner=和tables=的選項(xiàng)。 2、考慮到性能的原因,可能需要重建表索引。事件5:丟失控制文件 在數(shù)據(jù)庫(kù)起來(lái)并且運(yùn)行時(shí),通常都不能檢測(cè)到控制文件的問(wèn)題、假如控制文件丟失或者損壞了,Oracle將不會(huì)了解,下次數(shù)據(jù)庫(kù)的啟動(dòng)時(shí)將會(huì)導(dǎo)致ORA-205錯(cuò)誤(標(biāo)識(shí)控制文件'%s的錯(cuò)誤),還有一個(gè)系統(tǒng)級(jí)的錯(cuò)誤、假如只是丟失了其中的一個(gè)控制文件,可以采用下面的步驟來(lái)恢復(fù): 1、假如它正在運(yùn)行的話(huà),先關(guān)閉它。 2、查找丟失控制文件的原因、是由于硬件的問(wèn)題嗎(磁盤(pán)還是控制器)。 3、假如不是硬件的問(wèn)題,將控制文件的一個(gè)好的拷貝復(fù)制到丟失的位置,并且跳到步驟5。 4、假如是硬件的問(wèn)題,復(fù)制一個(gè)好的控制文件拷貝到一個(gè)可靠的位置。 5、編輯initsid.ora 或者 configsid.ora,更新CONTROL_FILES以反映最新的控制文件位置。 6、啟動(dòng)數(shù)據(jù)庫(kù)。 事件6:丟失全部的控制文件 可以采用以下的步驟恢復(fù): 1、關(guān)閉數(shù)據(jù)庫(kù)。 2、進(jìn)行一次全數(shù)據(jù)庫(kù)備份,包括全部的數(shù)據(jù)文件和redo log文件。 3、以NOMOUNT的狀態(tài)啟動(dòng)數(shù)據(jù)庫(kù)。 4、使用CREATE CONTROLFILE重新創(chuàng)建控制文件、你也可以備份控制文件到一個(gè)trace文件,然后執(zhí)行該文件。 5、在數(shù)據(jù)庫(kù)上進(jìn)行媒體恢復(fù)。 6、打開(kāi)數(shù)據(jù)庫(kù)。 7、使用shutdown normal關(guān)閉數(shù)據(jù)庫(kù)。 8、對(duì)數(shù)據(jù)庫(kù)進(jìn)行一次冷備份。 事件7:丟失一個(gè)索引 最簡(jiǎn)單的方法就是重新創(chuàng)建丟失的索引。 事件8:丟失一個(gè)非活動(dòng)的redo log 假如丟失redo數(shù)據(jù),恢復(fù)將是不完全的,必須重新創(chuàng)建涉及的表空間。要重新創(chuàng)建表空間,可以使用全的數(shù)據(jù)庫(kù)導(dǎo)出,這樣就可以很輕易的導(dǎo)入數(shù)據(jù)并且重新創(chuàng)建該表空間的對(duì)象。可以使用以下的步驟來(lái)恢復(fù): 1、通過(guò)Alter system來(lái)切換redo log文件。 2、關(guān)閉數(shù)據(jù)庫(kù)。 3、startup mount數(shù)據(jù)庫(kù)。 4、離線(xiàn)刪除涉及的數(shù)據(jù)文件。 5、打開(kāi)數(shù)據(jù)庫(kù)。 6、刪除用戶(hù)的表空間,包括其中的內(nèi)容。 7、通過(guò)全數(shù)據(jù)庫(kù)備份重新創(chuàng)建表空間和其中的對(duì)象。 事件9:丟失活動(dòng)的Redo log 如事件8討論的一樣,假如丟失了redo數(shù)據(jù),恢復(fù)將是不完全的,必須重新創(chuàng)建涉及的表空間、可以采用以下的步驟恢復(fù): 1、關(guān)閉數(shù)據(jù)庫(kù)。 2、startup mount數(shù)據(jù)庫(kù)。 3、離線(xiàn)刪除涉及的數(shù)據(jù)文件。 4、打開(kāi)數(shù)據(jù)庫(kù)。 5、刪除用戶(hù)的表空間,包括其中的內(nèi)容。 6、通過(guò)全數(shù)據(jù)庫(kù)備份重新創(chuàng)建表空間和其中的對(duì)象。 要注重的是活動(dòng)的事務(wù)將會(huì)丟失。事件10:丟失存檔的Redo log文件 假如存檔的redo log文件丟失,應(yīng)該馬上進(jìn)行一次冷備份、最好也進(jìn)行一次全數(shù)據(jù)庫(kù)導(dǎo)出、沒(méi)有丟失的存檔redo log文件的任何恢復(fù)都將是不完全的。 事件11:丟失活動(dòng)的回滾段 這里指的是丟失一個(gè)回滾段的一個(gè)數(shù)據(jù)文件、這是一個(gè)危急的恢復(fù)過(guò)程,它主要是在于保存活動(dòng)的事務(wù)。這里假定數(shù)據(jù)庫(kù)已經(jīng)起來(lái),而你想保存當(dāng)前運(yùn)行的事務(wù)。要使用以下的恢復(fù)過(guò)程,數(shù)據(jù)庫(kù)必須運(yùn)行在archivelog模式下。 可以使用以下步驟恢復(fù): 1、不要關(guān)閉數(shù)據(jù)庫(kù)、對(duì)于這種事件,數(shù)據(jù)庫(kù)啟動(dòng)比關(guān)閉更輕易解決問(wèn)題。 2、令屬于該數(shù)據(jù)文件中的全部回滾段離線(xiàn)。 3、刪除全部離線(xiàn)的回滾段。 4、在上面的第2步中,假如回滾段中有活動(dòng)的事務(wù),你將不能令它離線(xiàn)、可運(yùn)行以下的查詢(xún)來(lái)查看哪些事物是活動(dòng)的: SELECT SEGMENT_NAME, XACTS ACTIVE_TX, V.STATUSFROM V$ROLLSTAT V, DBA_ROLLBACK_SEGSWHERE TABLESPACE_NAME = 'tablespace_name' ANDSEGMENT_ID = USN;假如上面的查詢(xún)沒(méi)有結(jié)果,那么所有的回滾段都是離線(xiàn)的,但是,假如上面的查詢(xún)返回一行或者多行,并且其狀態(tài)為PENDING OFFLINE,那么可檢查這些回滾段的ACTIVE_TX列、帶有0值的回滾段將很快會(huì)離線(xiàn);但是,非0的值表示上面有活動(dòng)的事務(wù),它們需要被提交或者回滾。 5、處理活動(dòng)的事務(wù)、執(zhí)行以下的查詢(xún)來(lái)查看哪些用戶(hù)的事務(wù)被指派到該回滾段: SELECT S.SID, S.SERIAL#, S.USERNAME, R.NAME 'ROLLBACK'FROM V$SESSION S, V$TRANSACTION T, V$ROLLNAME RWHERE R.NAME IN ('pending_rollback1',' pending_rollback2', .... 'pending_rollbackN') ANDS.TADDR = T.ADDR ANDT.XIDUSN = R.USN;在知道哪些用戶(hù)在'pending offline'的回滾段上有活動(dòng)的事務(wù)后,可以要求他們提交或者回滾他們的事務(wù),或者可以使用以下的命令殺掉它們的進(jìn)程: ALTER SYSTEM KILL SESSION 'sid, serial#';6、在你處理完所有活動(dòng)的事務(wù)后,執(zhí)行以下的步驟: 丟棄表空間及其中的全部?jī)?nèi)容; 重新創(chuàng)建回滾表空間; 重新創(chuàng)建回滾段,并且令它們?cè)诰€(xiàn)。事件12:丟失全部的回滾段 在這種事件下,將丟失全部活動(dòng)的事務(wù),并且需要重新創(chuàng)建回滾段。這樣大的問(wèn)題可能是由于一個(gè)硬件問(wèn)題造成的,可以采用以下的步驟恢復(fù): 1、關(guān)閉數(shù)據(jù)庫(kù)。 2、使用DBVERIFY驗(yàn)證全部的數(shù)據(jù)文件。 3、解決其它的硬件問(wèn)題或者數(shù)據(jù)文件損壞。 4、以startup mount的方式啟動(dòng)數(shù)據(jù)庫(kù)實(shí)例。 5、在數(shù)據(jù)庫(kù)上執(zhí)行媒體恢復(fù)。 6、打開(kāi)數(shù)據(jù)庫(kù)。 7、按需要?jiǎng)?chuàng)建新的回滾段。 事件13:導(dǎo)出文件損壞 假如導(dǎo)出文件不能用了,那么應(yīng)該冷備份數(shù)據(jù)庫(kù)并且進(jìn)行一個(gè)全的數(shù)據(jù)庫(kù)導(dǎo)出、這是假定數(shù)據(jù)庫(kù)自身沒(méi)有問(wèn)題、假如數(shù)據(jù)庫(kù)也損壞了,那么應(yīng)該執(zhí)行以下的步驟: 1、ORA-1157錯(cuò)誤信息通常都表示一個(gè)或者多個(gè)的數(shù)據(jù)文件損壞了。查明哪些表受到影響,它們應(yīng)該是錯(cuò)誤信息中指明的數(shù)據(jù)文件中的表格。 2、跳過(guò)壞的數(shù)據(jù)塊,將數(shù)據(jù)由表格中選擇到臨時(shí)表格中。 3、丟棄損壞的表。 4、將臨時(shí)表重命名為丟棄的表。 5、重新建立受影響表上的全部索引。 6、使用VALIDATE STRUCTURE CASCADE的選項(xiàng)來(lái)分析全部損壞的表。 要注重的是損壞塊中數(shù)據(jù)將會(huì)丟失并且不能恢復(fù)。 事件14:在熱備份時(shí)關(guān)機(jī) 假如在熱備份正在進(jìn)行的時(shí)候忽然關(guān)機(jī),其中的一些表空間將可能處在備份模式、當(dāng)你嘗試打開(kāi)數(shù)據(jù)庫(kù)時(shí),它將只能mount,并且指示某些表空間處于熱備份模式、由于數(shù)據(jù)庫(kù)不能打開(kāi),你將不能讓表空間脫離熱備份模式、你可以使用以下的步驟恢復(fù): 1、startup mount數(shù)據(jù)庫(kù)。 2、查詢(xún)v$backup以查看哪些數(shù)據(jù)文件處于ACTIVE狀態(tài)。 3、通過(guò)使用命令A(yù)LTER DATABASE DATAFILE END BACKUP.來(lái)將這些數(shù)據(jù)文件脫離備份模式。 4、打開(kāi)數(shù)據(jù)庫(kù)。 事件15:恢復(fù)到某個(gè)非凡的時(shí)間點(diǎn) 以下的步驟可用來(lái)執(zhí)行point-in-time恢復(fù): 1、關(guān)閉數(shù)據(jù)庫(kù)實(shí)例。 2、以NOMOUNT的狀態(tài)啟動(dòng)數(shù)據(jù)庫(kù)實(shí)例。 3、使用UNTIL的選項(xiàng)來(lái)恢復(fù)數(shù)據(jù)庫(kù)。 4、打開(kāi)數(shù)據(jù)庫(kù)。 5、Shutdown NORMAL。 6、啟動(dòng)數(shù)據(jù)庫(kù)實(shí)例。 事件16:恢復(fù)到一個(gè)非凡的事件或者活動(dòng) 可以使用以下的步驟來(lái)恢復(fù): 1、關(guān)閉數(shù)據(jù)庫(kù)實(shí)例。 2、以NOMOUNT狀態(tài)啟動(dòng)數(shù)據(jù)庫(kù)實(shí)例。 3、使用UNTIL CANCEL來(lái)恢復(fù)數(shù)據(jù)庫(kù),提供存檔的redo log文件請(qǐng)求直到該活動(dòng)/事件為止。 4、輸入CANCEL來(lái)取消恢復(fù)。 5、打開(kāi)數(shù)據(jù)庫(kù)。 6、使用NORMAL的模式來(lái)關(guān)閉數(shù)據(jù)庫(kù)。 7、啟動(dòng)數(shù)據(jù)庫(kù)實(shí)例。 結(jié)論 高可用性對(duì)于任何的商業(yè)都是很重要的,ORACLE DBA可以通過(guò)一些計(jì)劃以確保停機(jī)時(shí)間最小化。
主站蜘蛛池模板: 日韩欧美中文字幕在线播放 | 农村寡妇偷毛片一级 | 国产三级日产三级韩国三级 | 99热免费在线 | 色综合久久88色综合天天 | 国产成人精品精品欧美 | 国产午夜精品久久理论片小说 | 成人免费视频一区二区 | 国产精品欧美激情在线播放 | 久久六视频 | 久久视频这里只有精品 | a级黄色毛片免费播放视频 a级精品九九九大片免费看 | 欧美亚洲国产日韩一区二区三区 | 国产毛片一级国语版 | 国产大秀视频 | 国产91精品一区二区视色 | 国产成人深夜福利在线观看 | 国产精品毛片va一区二区三区 | 久久免费观看国产精品 | 高清国产露脸捆绑01经典 | 国产成年网站v片在线观看 国产成人aa在线视频 | 三级视频网站 | 国产精品免费综合一区视频 | 免费精品99久久国产综合精品 | 亚洲美色综合天天久久综合精品 | 亚洲欧美日韩综合二区三区 | 久久成人免费网站 | 亚洲 欧美 在线观看 | 日本三级网站在线线观看 | 国产成人精品女人不卡在线 | 波多野结衣视频免费 | 99久久精品国产免看国产一区 | 精品视频在线视频 | 一级特黄特黄的大片免费 | 99久久久免费精品免费 | 黄色三级视频在线 | 99毛片| 免费91最新地址永久入口 | 日本道综合一本久久久88 | 日韩国产三级 | 91av久久|