昨日有建立乙個客戶rac-dg物理備用資料庫,這裡的一般過程中再次列舉一下,為了不涉及洩露隱私。的主要引數已被替換名稱。詳細路徑也不一致。因為環境的客戶端不與本機連線的網路同意,當故障不能削減各種報警日誌和trace主題檔案。顧大致寫出。
alter database force logging;
alter system set log_archive_config='dg_config=(dg,dgdg)';
alter system set log_archive_dest_1='location=use_db_recovery_file_dest valid_for=(all_logfiles,all_roles) db_unique_name=dg';
alter system set log_archive_dest_2='service=dgdg lgwr async valid_for=(online_logfiles,primary_role) db_unique_name=dgdg';
alter system set log_archive_dest_state_1='enable';
alter system set log_archive_dest_state_2='enable';
alter system set standby_file_management='auto';
alter system set fal_server='dgdg';
需重新啟動引數:
2.建立pfile
sql> create pfile from spfile;
3.改動備庫用的pfile
*.__db_cache_size=0
4.改動tnsnamesl.ora
# generated by oracle configuration tools.
dg =
(description =
(address = (protocol = tcp)(host = dg-cluster-scan)(port = 1521))
(connect_data =
(server = dedicated)
(service_name = dg)))
dgdg =
(description =
(address_list =
(address = (protocol = dgp)(host = dgdg)(port = 1521))
)(connect_data =
(service_name = dg)))
5.改動listener.ora(僅僅給備庫用,主庫能夠不配置靜態監聽)
6.備庫建立相關資料夾
c:\archivelog --指定乙個本地歸檔路徑,備庫接收到的歸檔日誌和自己生成的歸檔日誌都放在這裡
7.主庫做rman全備
rman> backup as compressed backupset full database format 'c:\bak\full_%d_%i_%t_%u'
8.主庫建立備庫控制檔案
sql> alter database create standby controlfile as 'c:\control01.ctl';
sql> alter database create standby controlfile as 'c:\control02.ctl';
9.複製備份檔案、password檔案、pfile檔案、tnsnames.ora、listener.ora到備庫對應位置
10.備庫建立例項
oradim -new -sid dg -startmode manual -spfile;
11.啟動監聽
lsntrctl start
12.啟動例項到mount
set oracle_sid=dg
sqlplus / as sysdba
sql> startup mount
13.恢復資料庫
rman> catalog start with 'd:\bak'; --不指定會提示無法恢復資料庫
rman> restore database;
14.備庫加入standby redo logfile
sql> alter database recover managed standby database disconnect from session;
16.給備庫建立spfile(可選)
出現原因:11.2.0.3預設裝完後的opatch版本號是11.2.0.1.7,我要打的patch 27須要在這個版本號之上才幹夠
解決方法:解壓高版本號的opatch安裝包後覆蓋原opatc**件夾
2.備庫alert.log報警提示無法找到控制檔案自己主動備份路徑
出現原因:rac主庫之前部署過自己主動rman備份指令碼,指定了控制檔案自己主動備份路徑。但備庫並沒有此路徑
解決方法:進入rman,改動該項引數為備庫存在的資料夾
3.引數設定錯誤而引起gap,導致自己主動備份指令碼停止執行
出現原因:之前在設定引數時,把主庫的log_archive_dest_1引數設定了本地路徑歸檔,如:
alter system set log_archive_dest_1='location=c:\archivelog valid_for=(all_logfiles,all_roles) db_unique_name=dg';
作為rac。歸檔路徑在本地的話。其它節點就無法讀取。發現後又一次設定為use_db_recovery_file_dest後,那些在本地的歸檔日誌就成為gap而無法傳遞到備庫
解決方法:手工複製全部提示缺失的***歸檔到指定位置,再手動執行rman自己主動備份指令碼
說明:因為rman自己主動備份指令碼裡配置了冗餘7份,而之搭建dg時手動執行了全庫備份,這些手動備份也是算在7份冗餘之內的,為了不占用正常備份的配額。dg搭建完畢後建議物理刪除。然後再crossecheck並清理掉
4.主、備庫的alert.log常常會出現tns錯誤
fatal ni connect error 12547
tns-12547 tns : 丟失連線
ns secondary err code : 12560
ns main err code : 517
tns-00517 tns : 丟失連線
nt secondary err code : 54
nt os err code : 0
出現原因:節點2沒有配置tnsnames.ora,造成thread 2的歸檔日誌無法傳遞到備庫,同一時候也會造成主庫日誌能傳遞過去,但無法應用。
最近遇到的一些坑
c 邏輯判斷的順序是從左向右的。conditiona conditionb 與 conditionb conditiona並不一定等價。舉個例子 void insertsort vector arr,int length arr j 1 key 由於j是int型別,所以在key 5的那次迴圈裡,j最...
tensorflow遇到的一些錯誤
1 tensorflow dtype t.dtype.base dtype attributeerror float object has no attribute dtype 參考 我報錯的行是 disc gradients disc optimizer.compute gradients dis...
svn branch merge中遇到的一些問題
拉分支的時候,選擇svn branch 在彈出的框中需要選擇目標位址,不過這個有乙個問題就是,這個目標位址不能是已經建立好的,必須至少要有一級目錄還是未建立的,比如想要拉分支到目錄branch 那你最多只能在本地建立乙個branch目錄,這個 是必須要手動輸入到 from branch 否則就會報 ...