dataGuard推薦:利用冷備創(chuàng)建standby.doc_第1頁(yè)
dataGuard推薦:利用冷備創(chuàng)建standby.doc_第2頁(yè)
dataGuard推薦:利用冷備創(chuàng)建standby.doc_第3頁(yè)
dataGuard推薦:利用冷備創(chuàng)建standby.doc_第4頁(yè)
dataGuard推薦:利用冷備創(chuàng)建standby.doc_第5頁(yè)
已閱讀5頁(yè),還剩1頁(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)介

dataGuard推薦:利用冷備創(chuàng)建standby一:試驗(yàn)環(huán)境:primary server:CentOS Linux4.4 + oracle ORACLE_SID:orcl主庫(kù)ip:44ORACLE_HOME: /free/oracle/product/10.2.0/db_1/standby server: SUSE Linux9 + oracle ORACLE_SID:orcl備庫(kù)ip:53ORACLE_HOME: /free/oracle/product/10.2.0/db_1/二:配置步驟 首先,裝好primary和standby上的oracle,建SID同為orcl的庫(kù),所有設(shè)置完全相同。然后停止shutdown兩臺(tái)上的oracle,將primary上的所有數(shù)據(jù)文件,控制文件,redo文件和password文件都copy到standby機(jī)器的相應(yīng)位置。這樣,我們就擁有了兩臺(tái)完全一樣的oracle server。1. 在primary database上設(shè)置force loggingSQLalter database force logging;2. 修改primary databse的初始化參數(shù),主要增加參數(shù)如下:*.control_files=/free/oracle/oradata/orcl/control01.ctl,/free/oracle/oradata/orcl/control02.ctl,/free/oracle/oradata/orcl/control03.ctl*.service_names=primary #這個(gè)參數(shù)指定了主庫(kù)的service name*.log_archive_config=DG_CONFIG=(PRIMAYR,STANDBY)*.DB_UNIQUE_NAME=PRIMARY*.LOG_ARCHIVE_DEST_1= LOCATION=/free/oracle/orabak*.LOG_ARCHIVE_DEST_2= SERVICE=STANDBY VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=STANDBY LGWR SYNC AFFIRM 如果不指定REOPEN,默認(rèn)為300*.LOG_ARCHIVE_DEST_STATE_1=ENABLE*.LOG_ARCHIVE_DEST_STATE_2=ENABLE*.LOG_ARCHIVE_FORMAT=arc%s%t%r.arc*.FAL_SERVER= STANDBY *.FAL_CLIENT= PRIMARY *.STANDBY_FILE_MANAGEMENT=AUTO*.standby_archive_dest=/free/oracle/orabakLOCK_NAME_SPACE -這是參數(shù)當(dāng)主數(shù)據(jù)庫(kù)和備用數(shù)據(jù)在同一臺(tái)機(jī)上時(shí)要設(shè)該參數(shù),設(shè)為備用數(shù)據(jù)庫(kù)的SID3. 設(shè)置primary database為archivelog模式SQLshutdown immediate;SQLstartup mount;SQLalter database archivelog;SQLalter database open;4. 在primary database上創(chuàng)建standby database的控制文件SQLshutdown immedaite;SQLstartup mount;SQLalter database create standby controlfile as /free/oracle/oradata/orcl/controlstandby.ctlSQLalter database open;然后將該controlfile復(fù)制到standby server的對(duì)應(yīng)位置。5. 修改standby databse的初始化參數(shù)*.service_names=standby #這個(gè)參數(shù)指定了備庫(kù)的service name*.control_files=/free/oracle/oradata/orcl/controlstandby.ctl*.log_archive_config=DG_CONFIG=(PRIMARY,STANDBY) *.LOG_ARCHIVE_DEST_1= LOCATION=/free/oracle/orabak VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=STANDBY *.LOG_ARCHIVE_DEST_2= SERVICE=primary VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=PRIMARY LGWR SYNC AFFIRM REOPEN=10 如果不指定REOPEN,默認(rèn)為300#*.LOG_ARCHIVE_DEST_2= SERVICE=standby VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=STANDBY LGWR SYNC REOPEN=10*.db_unique_name=STANDBY*.FAL_CLIENT=STANDBY*.FAL_SERVER=PRIMARY*.log_archive_dest_state_1=enable*.log_archive_dest_state_2=enable*.STANDBY_ARCHIVE_DEST=/free/oracle/orabak*.STANDBY_FILE_MANAGEMENT=AUTODB_FILE_NAME_CONVERT -當(dāng)primary和standby的數(shù)據(jù)文件路徑不一致時(shí)使用LOG_FILE_NAME_CONVERT -當(dāng)primary和standby的數(shù)據(jù)文件路徑不一致時(shí)使用LOCK_NAME_SPACE -當(dāng)主數(shù)據(jù)庫(kù)和備用數(shù)據(jù)在同一臺(tái)機(jī)上時(shí)設(shè)為備用數(shù)據(jù)庫(kù)的 SID具體參數(shù)的說(shuō)明請(qǐng)參考o(jì)racle在線文檔 6. 設(shè)置primary database和standby database的tnsnames.ora,主備庫(kù)兩者的tnsnames.ora配置文件相同。primary =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 44)(PORT = 1521)(CONNECT_DATA =(SERVICE_NAME = primary) 這個(gè)primayr為主庫(kù)的 service name)standby =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 53)(PORT = 1521)(CONNECT_DATA =(SERVICE_NAME = standby) 這個(gè)standby為備庫(kù)的service name) 7. 啟動(dòng)standby databaseSQLstartup nomountSQLalter database mount standby database; 執(zhí)行此命令后備庫(kù)會(huì)處于手動(dòng)恢復(fù)狀態(tài)。8. 啟動(dòng)primary databaseSQLstartup9. 啟動(dòng)standby database到recover manage模式SQLalter database recover managed standby database disconnect; 執(zhí)行此命令后,備庫(kù)會(huì)切換到自動(dòng)恢復(fù)模式。如果要啟動(dòng)到實(shí)時(shí)日志應(yīng)用模式SQLalter database recover managed standby database using current logfile; 切換備庫(kù)到適時(shí)應(yīng)用日志模式,即real-time apply。執(zhí)行這個(gè)命令后光標(biāo)會(huì)停止在那里。或者alter database recover managed standby database using current logfile disconnect from session; 執(zhí)行這個(gè)命令后,會(huì)切斷這個(gè)session,執(zhí)行的功能與上面相同。但是之前需要先創(chuàng)建standby logfile,使用如下命令創(chuàng)建standby logfile:alter database add standby logfile group 4 /free/oracle/oradata/orcl st_redo4.log size 50M同時(shí)還需要修改主庫(kù)的參數(shù)LOG_ARCHIVE_DEST_2的配置由于事先已經(jīng)配置好了備庫(kù)的LOG_ARCHIVE_DEST_2參數(shù),這里無(wú)需在進(jìn)行配置。關(guān)于standby redo file文件,一些特性簡(jiǎn)單說(shuō)明如下:當(dāng)dataguard運(yùn)行在max protection 或max availability時(shí),因?yàn)楸仨毷褂肔GWR日志傳輸方式 即時(shí)的將日志傳送到standby,因此需要用到standby redo log。其實(shí)主庫(kù)產(chǎn)生的日志會(huì)同步寫(xiě)到主庫(kù)的redo log 和備庫(kù)的standby redo log上。同時(shí)主庫(kù)日志切換時(shí),standby redo log也會(huì)進(jìn)行日志切換,因此standby redo log中的信息是與主庫(kù)的redo file是 適時(shí)同步的,在備庫(kù)進(jìn)行恢復(fù)的時(shí)候,是利用standby redo log進(jìn)行的,因此也可以說(shuō)standby redo log是主庫(kù)和備庫(kù)直接同步的一個(gè)橋梁。創(chuàng)建的standby redo log大小必須和主庫(kù)的redo大小相等,創(chuàng)建的組數(shù)量 建議比主庫(kù)的redo file多一組,這樣做的目的是日后備用,這也是oracle官方的建議。但是根據(jù)我的測(cè)試,我創(chuàng)建四組standby redo log,真正利用的只有兩組。10. 切換standby database到read only模式SQL alter database recover managed standby database cancel;#首先取消備庫(kù)的自動(dòng)恢復(fù)模式SQLalter database open read only;如果要切換回recover manage模式SQL alter database recover managed standby database disconnect from session;三:功能切換Switchover狀態(tài)切換首先在primary上操作:1. 首先查看切換狀態(tài):SQLselect switchover_status from v$databaseswitchover_status的值如果是To standby,可以直接switchover,如果是sessions active, 則需要在switchover的命令后面加上。2. 執(zhí)行切換主庫(kù)到備庫(kù):SQLalter database commit to switchover to physical standby;3.關(guān)閉數(shù)據(jù)庫(kù): SQLshutdown immediate;4. 啟動(dòng)到mount狀態(tài):SQLstartup mount;然后在standby上操作1.查看切換狀態(tài): SQL select switchover_status from v$database ; switchover_status的值如果是To primary,可以直接switchover,如果是sessions active, 則需要在switchover的命令后面加上with session shutdown2. 執(zhí)行切換備庫(kù)到主庫(kù):SQLalter database commit to switchover to primary;3.關(guān)閉備庫(kù): SQLshutdown immediate;4.重新啟動(dòng)備庫(kù) SQLstartup;小竅門:要想順利的實(shí)現(xiàn)switchover,最好在每臺(tái)server上都同時(shí)設(shè)置好primary和standby的一些初始化參數(shù),雖然其中一些參數(shù)只有在primary或者standby其中之一上起作用。Failover狀態(tài)切換在備庫(kù)上進(jìn)行切換:1.首先停止備庫(kù)的自動(dòng)恢復(fù)狀態(tài): SQLalter database recover managed standby database finish;如果沒(méi)有使用過(guò)standby redo log的話執(zhí)行:SQLalter database recover managed standby database finish skip standby logfile;2.切換備庫(kù)到主庫(kù): SQLalter database commit to switchover to primary;3. 關(guān)閉數(shù)據(jù)庫(kù):SQLshutdown immediate;4. 啟動(dòng)數(shù)據(jù)庫(kù):SQLstartup;Active狀態(tài)切換:Active是從8i延續(xù)過(guò)來(lái)的,其實(shí)不建議采用:在備庫(kù)上執(zhí)行切換:1:alter database recover managed standby database cancel;2:alter database activate standby database;3:shutdown immediate總結(jié)一下Failover 和 Switchover 的區(qū)別:在9i 的dataguad環(huán)境中:1:執(zhí)行Switch Over 必須是Primary 正常,并且是必須Primary 主動(dòng)先Switch成 standby.然后standby 才能switch 成primary。 2:如果需要作成primary出問(wèn)題,standby 能接管的話,必須作 failover ,而不是SwitchOver。Failover : 將主數(shù)據(jù)庫(kù)offline,備用數(shù)據(jù)庫(kù)online,這種操作由系統(tǒng)和軟件失敗引起。 即使在備用數(shù)據(jù)庫(kù)上應(yīng)用重做日志,也可能出現(xiàn)數(shù)據(jù)丟失的現(xiàn)象,除非備用數(shù)據(jù)庫(kù)運(yùn)行在 guaranteed protection 模式。 原主數(shù)據(jù)庫(kù)重新使用時(shí)必須重新啟動(dòng)實(shí)例。 其它的備用數(shù)據(jù)庫(kù)也需重新啟動(dòng)實(shí)例。 Switchover :故意將主數(shù)據(jù)庫(kù)offline,而將另一備用數(shù)據(jù)庫(kù)online,它能夠切換到備用數(shù)據(jù)庫(kù)而不需同步操作。如:可使用 Switchover 完成系統(tǒng)的平滑升級(jí)。 即使在備用數(shù)據(jù)庫(kù)上不應(yīng)用重做日志,也不會(huì)造成數(shù)據(jù)的丟失。 數(shù)據(jù)庫(kù)不需重新啟動(dòng)實(shí)例。這使主數(shù)據(jù)庫(kù)幾乎能立即在備用數(shù)據(jù)庫(kù)上恢復(fù)它的功能,因此可經(jīng)常進(jìn)行定期維護(hù)而不需中斷操作。 Failover和Switchover的區(qū)別為:當(dāng)Failover發(fā)生,備用數(shù)據(jù)庫(kù)切換為主數(shù)據(jù)庫(kù)之后,它丟失了備用數(shù)據(jù)庫(kù)的所有能力,也就是說(shuō),不能再返回到備用模式;而Switchover可以,備用數(shù)據(jù)庫(kù)可切換為主數(shù)據(jù)庫(kù),也可從主數(shù)據(jù)庫(kù)再切換回備用數(shù)據(jù)庫(kù)。四:相關(guān)視圖v$archive_destv$archive_dest_statusv$log_historyv$archvied_logv$managed_standbyv$archive_gap五:常見(jiàn)問(wèn)題1. 日志無(wú)法傳送SQLselect dest_name,status,error from v$archive_dest;察看相應(yīng)的歸檔路徑的狀態(tài)是否valid,否則根據(jù)error信息進(jìn)行處理2. 無(wú)法使用alter database重命名data file 在standby上,當(dāng)設(shè)置standby_file_management為auto時(shí),不允許下列操作alter database renamealter database add/drop logfilealter database add/drop standby logfile memberalter database create datafile as3. switchover失敗SQLalter database commit to switchover to physical standby錯(cuò)誤:ORA-01093:alter database close only permitted with no session connected可以察看引起該錯(cuò)誤的活動(dòng)sessionSQL select sid,process,program from v$session where type=USER andsid(select distinct sid from v$mystat);然后根據(jù)查出的sid結(jié)合v$session視圖最后用alter system kill session sid,serial 來(lái)kill掉進(jìn)程,斷開(kāi)該session 或者使用如下命令來(lái)做switchoverSQLalter database commit to switchover to physical standby with s

溫馨提示

  • 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)論