1. 程式人生 > >資料遷移:DataGuard配置

資料遷移:DataGuard配置

本次快速搭建單例項物理DataGuard,為解決某些同事擔心“那如果我在primary裡面使用提交的事務操作時按照rowid去檢索資料,到備庫執行的和主庫操作不一致”

資料庫軟體安裝過程不再贅述。

1: 檢查主庫否為 force logging .

select inst_id , force_logging from gv$database;
alter database force logging;

2:備庫建立資料庫例項 

oradim -new -sid tjcshow -startmode a

3:配置主/備庫tnsnames,listener

增加主庫TNSNAMES節點:

TJCSHOW1 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.100.111.130)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = tjcshow)
    )
  )


TJCSHOW2 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.100.111.131)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = tjcshow)
    )
  )


將主庫listener/SQLNET/TNSNAMES拷貝到備庫待用

修改監聽:

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = C:\oracle\product\10.2.0\db_1)
      (PROGRAM = extproc)
    )
    (SID_DESC =
    (GLOBAL_DBNAME = tjcshow)
    (ORACLE_HOME = C:\oracle\product\10.2.0\db_1)
    (SID_NAME = tjcshow)
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
      (ADDRESS = (PROTOCOL = TCP)(HOST = DKD-O13022802)(PORT = 1521))
    )
  )


4:主庫生成pfile,拷貝到備庫作為基礎引數檔案,修改主/備庫pfile

---PRIMAY
*.log_archive_config=''
*.log_archive_dest_1='LOCATION=C:\oracle\product\10.2.0\archivelog VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=tjcshow'
*.log_archive_dest_2='service=tjcshow2 lgwr async  VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=tjcshow'
*.log_archive_dest_state_1=enable
*.log_archive_dest_state_2=enable
*.LOG_ARCHIVE_FORMAT='%t_%s_%r.arc'
*.log_archive_max_processes=1
*.fal_client='tjcshow1'
*.fal_server='tjcshow2'
*.DB_FILE_NAME_CONVERT='C:\oracle\product\10.2.0\oradata\tjcshow','C:\oracle\product\10.2.0\oradata\tjcshow' 
*.LOG_FILE_NAME_CONVERT='C:\oracle\product\10.2.0\oradata\tjcshow','C:\oracle\product\10.2.0\oradata\tjcshow'
*.standby_file_management=auto

---STSNDBY

*.log_archive_config=''
*.log_archive_dest_1='LOCATION=C:\oracle\product\10.2.0\archivelog VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=tjcshow'
*.log_archive_dest_2='service=tjcshow1 lgwr async  VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=tjcshow'
*.log_archive_dest_state_1=enable
*.log_archive_dest_state_2=enable
*.LOG_ARCHIVE_FORMAT='%t_%s_%r.arc'
*.log_archive_max_processes=1
*.fal_client='tjcshow2'
*.fal_server='tjcshow1'
*.DB_FILE_NAME_CONVERT='C:\oracle\product\10.2.0\oradata\tjcshow','C:\oracle\product\10.2.0\oradata\tjcshow' 
*.LOG_FILE_NAME_CONVERT='C:\oracle\product\10.2.0\oradata\tjcshow','C:\oracle\product\10.2.0\oradata\tjcshow'
*.standby_file_management=auto




5:節點聯通性測試,節點1 tnsping tjcshow1 tnsping tjcshow2 節點2 tnsping tjcshow1 tnsping tjcshow2

startup nomount pfile=c:\standby.ora;

c:\oracle\product\10.2.0\db_1\BIN>TNSPING.EXE tjcshow1

TNS Ping Utility for 64-bit Windows: Version 10.2.0.4.0 - Production on 13-MAR-2
013 09:23:20

Copyright (c) 1997,  2007, Oracle.  All rights reserved.

Used parameter files:
C:\oracle\product\10.2.0\db_1\network\admin\sqlnet.ora


Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.100.1
11.130)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = tjcsh
ow)))
OK (0 msec)

c:\oracle\product\10.2.0\db_1\BIN>TNSPING.EXE tjcshow2

TNS Ping Utility for 64-bit Windows: Version 10.2.0.4.0 - Production on 13-MAR-2
013 09:23:21

Copyright (c) 1997,  2007, Oracle.  All rights reserved.

Used parameter files:
C:\oracle\product\10.2.0\db_1\network\admin\sqlnet.ora


Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.100.1
11.131)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = tjcsh
ow)))
OK (0 msec)
6:RMAN 備份主庫
sql 'alter system archive log current' ;
backup as compressed backupset full format='c:\backupset-%d_%s.bak' database include current controlfile for standby plus archivelog ;
7:拷貝檔案,還原備庫
Set oracle_sid=tjcshow
Startup pfile=’c:\standby.ora’ nomount;
rman target  sys/[email protected]  auxiliary sys/[email protected] 
duplicate target database for standby dorecover nofilenamecheck;
8:新增Standby redo log 重做日誌組配置

( 01) 主庫新增Standby Redo Log
ALTER DATABASE ADD STANDBY LOGFILE GROUP 4 ('C:\oracle\product\10.2.0\oradata\tjcsho\redo004') SIZE 50M;
ALTER DATABASE ADD STANDBY LOGFILE GROUP 5 ('C:\oracle\product\10.2.0\oradata\tjcsho\redo005') SIZE 50M;
ALTER DATABASE ADD STANDBY LOGFILE GROUP 6 ('C:\oracle\product\10.2.0\oradata\tjcsho\redo006') SIZE 50M;
ALTER DATABASE ADD STANDBY LOGFILE GROUP 7 ('C:\oracle\product\10.2.0\oradata\tjcsho\redo007') SIZE 50M;

( 02) 備庫新增Standby Redo Log
ALTER DATABASE ADD STANDBY LOGFILE GROUP 4 ('C:\oracle\product\10.2.0\oradata\tjcsho\redo004') SIZE 50M;
ALTER DATABASE ADD STANDBY LOGFILE GROUP 5 ('C:\oracle\product\10.2.0\oradata\tjcsho\redo005') SIZE 50M;
ALTER DATABASE ADD STANDBY LOGFILE GROUP 6 ('C:\oracle\product\10.2.0\oradata\tjcsho\redo006') SIZE 50M;
ALTER DATABASE ADD STANDBY LOGFILE GROUP 7 ('C:\oracle\product\10.2.0\oradata\tjcsho\redo007') SIZE 50M;

9:啟動到管理模式
shutdown immediate
startup nomount
alter database mount standby database
alter database recover managed standby database disconnect from session;

10:測試

@primary

--檢視DG配置是否正確,主/備庫查詢:

select status,destination, error from v$archive_dest; 
VALID	C:\oracle\product\10.2.0\archivelog	
VALID	tjcshow2	
INACTIVE		
INACTIVE		
INACTIVE		
INACTIVE		
INACTIVE		
INACTIVE		
INACTIVE		
INACTIVE	

--建立表空間,測試表進行測試

create tablespace rowidtbs datafile 'C:\oracle\product\10.2.0\oradata\tjcshow\rowidtbs01.dbf' size 100M;
create table rowidt (id int,name varchar(20)) tablespace rowidtbs;

--插入1000條資料

begin
for x  in 1..1000 loop
insert into rowidt values(x,'oracledg');
end loop;
end;
/
--強制資料庫日誌切換
alter system switch logfile;

--將備庫從恢復模式置於只讀模式:

alter database recover managed standby database cancel;
alter database open ;

--查詢備庫資料
select rowid,id,name from test
AAAMpBAABAAAOvaAAA	1	oracle    
AAAMpBAABAAAOvaAAB	2	oracle    
AAAMpBAABAAAOvaAAC	3	oracle    
AAAMpBAABAAAOvaAAD	4	oracle    
AAAMpBAABAAAOvaAAE	5	oracle    
aaampbaabaaaovaaaf	6	oracle    
aaampbaabaaaovaaag	7	oracle    
............................

1000條測試資料全部同步到備庫,且ROWID沒有發生變化。

PS:摘錄 Data Guard Concepts and Administration

Physical standby database  Provides a physically identical copy of the primary database, with on disk database structures that are identical to the primary database on a block-for-block basis. The database schema, including indexes, are the same. A physical standby database is kept synchronized with the primary database, through Redo Apply, which recovers the redo data received from the primary database and applies the redo to the physical standby database.

所以主庫到備庫的後的ROWID不會發生變化,所以同事的擔心沒有必要。做這件事情的同時想起exp/imp,expdp/impdp做備份還原的時候會修改rowid的值,所以如果所做的備份庫的應用中使用了ROWID,千萬不要使用exp/imp,expdp/impd做資料遷移。

相關推薦

資料遷移DataGuard配置

本次快速搭建單例項物理DataGuard,為解決某些同事擔心“那如果我在primary裡面使用提交的事務操作時按照rowid去檢索資料,到備庫執行的和主庫操作不一致” 資料庫軟體安裝過程不再贅述。 1: 檢查主庫否為 force logging . select inst

mysql database 資料遷移mydumper與myloader

[[email protected] ~]# yum install glib2-devel mysql-devel zlib-devel pcre-devel openssl-devel cmake [[

裝修新 Linux 伺服器(資料遷移,環境配置和埠開放)

Linux 如何變成一個伺服器?如何轉移服務到新的伺服器?且看本篇清單 ☸ 資料遷移 檔案遷移 如果 需要舊伺服器上的一些檔案,就需要進行資料遷移 # 本機 -> 遠端 scp /root [e

資料遷移】線上資料遷移 雙寫資料庫、搬歷史資料、切換寫入、灰度驗證(99.9999%)、刪除歷史

  線上資料遷移,是指將正在提供線上服務的資料,從一個地方遷移到另一個地方,整個遷移過程中要求不停機,服務不受影響。根據資料所處層次,可以分為cache遷移和儲存遷移;根據資料遷移前後的變化,又可以分為平移和轉移。 平移是指遷移前後資料組織形式不變,比如Mysql從1個例項擴充套件為4個例項,Redis

Mysql系列九使用zookeeper管理遠端Mycat配置檔案、Mycat監控、Mycat資料遷移(擴容)

一、使用zookeeper管理遠端Mycat配置檔案 環境準備: 虛擬機器192.168.152.130: 虛擬機器192.168.152.128: 本機: 1. 啟動ZK ./zkServer.sh start   2. 修改/usr/local

資料入門Hadoop安裝、環境配置及檢測

目錄 1.導包Hadoop包 2.配置環境變數 3.把winutil包拷貝到Hadoop bin目錄下 4.把Hadoop.dll放到system32下 5.檢測Hadoop是否正常安裝 5.1在maven專案中檢測,將配置檔案放入resource包下 5.2然後

MongoDB副本集配置資料遷移實戰

MongoDB副本集配置和資料遷移實戰 https://gitee.com/et/ops/blob/master/MongoDB副本集配置和資料遷移實戰.md 環境:Ubuntu 16.04, MongoDB 3.6 基本概念 MongoDB 的副本集就是

20T資料遷移經驗手把手教你群暉NAS資料遷移,黑裙暉通用!

原文網址:https://www.toutiao.com/a6630412335842329101/   2016年把Orico 陣列盒整成NAS,容量從8T增到20T,原本以為可以撐上個三五年,沒想到HIFI燒久了不僅錢包越來越癟,自動遇到Hao4K後就再也沒發現在家是一個儲存達

django 連線MYSQL時,資料遷移時報django.db.utils.InternalError: (1366, "Incorrect string value: '\\xE9\\x97\\xAE\\xE9\\xA2\\x98' for column 'na

django 連線MYSQL時,資料遷移時報:django.db.utils.InternalError: (1366, "Incorrect string value: '\\xE9\\x97\\xAE\\xE9\\xA2\\x98' for column 'name' at row 5") 這個問題是由

輕鬆上雲系列之一本地資料遷移上雲

背景資訊在雲端計算服務高速發展的今天,如何方便快捷地將已有的伺服器系統遷移上雲,有著非常重要的意義。阿里雲伺服器遷移服務方案,即遷移服務,正是在這個需求背景下應運而生。它極大地簡化了伺服器系統遷移工具的使用條件、降低了使用成本,使使用者的系統一鍵遷移到阿里雲成為可能。 使用遷移服務來進行系統遷移比較便捷,您

輕鬆上雲系列之二其他雲資料遷移至阿里雲

本文件圍繞如何將您其他雲廠商上的資料遷移到阿里雲,提供了多個場景的實踐方案。 文件合集 AWS 資料遷移至阿里雲 Amazon S3資料遷移到OSS 從AWS RDS遷移MySQL到阿里雲RDS AWS S3遷移到OSS(線上遷移服務) Azure資料遷移至阿里

資料結構篇校園最短路徑導航(一地圖資料配置以及圖的建立)

首先去找一張學校的地圖,並且自己配置好資料和路線 在程式碼裡面寫好資料 //地點資訊 char _mapName[32][50] = {"行政樓","實驗樓D", "教學樓A", "籃球場", "足球場", "A4", "實驗樓C", "教學樓B", "A2", "A6", "計

Linux作業系統下部署Jenkins環境,資料遷移(備機部署)以及主從節點的配置

         本文所闡述的,均是在Linux作業系統下部署Jenkins環境,採用的解決方案是,使用Tomcat、Jenkins.war包和maven,以及利用Nginx做Tomcat的反向代理來實現Jenkins的CI/CD。

Vue 進階教程之Axios配置JWT/封裝外掛/傳送表單資料

小編推薦:Fundebug專注於JavaScript、微信小程式、微信小遊戲,Node.js和Java實時BUG監控。真的是一個很好用的bug監控費服務,眾多大佬公司都在使用。 尤雨溪之前在微博釋出訊息,不再繼續維護 vue-resource,並推薦大家開始使用 Axios,本文就

redis叢集配置加單例項資料遷移到叢集

http://vip.mtu9335.cn/http://vip.xrr9518.cn/http://vip.nyc9430.cn/http://vip.jaf1308.cn/http://vip.qsv0141.cn/http://vip.tub1546.cn/http://vip.ife7579.cn/h

解決方案hbase資料遷移發生ERROR: Unknown table錯誤

轉載自:m.blog.csdn.net/blog/jiangheng0535/10387167 以下是文章的原文: 說明:網上眾多千篇一律的版本都說要用到一個add_table.rb的檔案,可是我的版本根本hbase下就不存在這個檔案。 1.把資料表test從hbase

實時遷移實現遠距離資料中心橋接

除非您執行的是大型計算叢集,否則您可能會部署伺服器虛擬化以減少運營費用。虛擬化將會給LAN(不包括SAN)帶來輸入輸出問題。在所面臨的挑戰中,實時遷移或vMotion networking會需要遠距離資料中心橋接,這將可能影響資料中心網路的穩定性。   虛擬機器管理程式軟體允

從spring cloud config 配置中心讀取資料Fetching config from server at: http://localhost:8888錯誤

在使用spring cloud config做分散式配置中心時,使用客戶端讀取配置中心配置報了這樣一段錯: c.c.c.ConfigServicePropertySourceLocator : Fetching config from server at: http://l

redis-migration獨創的redis線上資料遷移工具

一、常見redis資料遷移方式 業內,常見的redis資料遷移方式有以下三種:aof(日誌檔案)、rdb(快照檔案)、replication(主從複製)。 其中,aof和rdb兩種方式適用於跨網路(網路隔離)的redis例項之間的資料遷移,通過:在源例項上執行指令(bgr

MVC實用構架設計(三)——EF-Code First(2)實體對映、資料遷移,重構

〇、目錄 一、前言 二、實體對映 實體關係圖實體類定義實體類對映三、資料遷移 四、程式碼重構 五、原始碼獲取 六、系列導航 一、前言   經過EF的《第一篇》,我們已經把資料訪問層基本搭建起來了,但並沒有涉及實體關係。實體關係對於一個數據庫系統來說至關重要,而且EF的各個實體之間的聯絡,實體之間的協