[20190515]熱備份模式與rman衝突.txt

来源:https://www.cnblogs.com/lfree/archive/2019/05/23/10910950.html
-Advertisement-
Play Games

[20190515]熱備份模式與rman衝突.txt--//別人的系統做dg時打開熱備份模式,忘記關閉,做rman備份時報錯。做一個記錄。--//實際上也怪自己,實施時沒有講清楚。通過例子說明:1.環境:SCOTT@book> @ ver1PORT_STRING VERSION BANNER x86 ...


[20190515]熱備份模式與rman衝突.txt

--//別人的系統做dg時打開熱備份模式,忘記關閉,做rman備份時報錯。做一個記錄。
--//實際上也怪自己,實施時沒有講清楚。通過例子說明:

1.環境:
SCOTT@book> @ ver1
PORT_STRING                    VERSION        BANNER
------------------------------ -------------- --------------------------------------------------------------------------------
x86_64/Linux 2.4.xx            11.2.0.4.0     Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

SYS@book> alter database begin backup;
Database altered.

--//實際上這樣做dg,如果資料庫不大,對於文件系統的資料庫還是很快的,特別目錄結構一樣的情況。
--//為了避免輸入口令,最好先做ssh相互認證。
--//cd /mnt/ramdisk/book
--//ls -1 *.dbf| xargs -I{} -P 4 scp {} [email protected]:/mnt/ramdisk/book
--//或者
--//scp -r /mnt/ramdisk/book/*.dbf [email protected]:/mnt/ramdisk/book/

2.主庫做rman備份:
SYS@book> select * from v$backup;
FILE# STATUS     CHANGE# TIME
----- ------ ----------- -------------------
    1 ACTIVE 15677701496 2019-05-21 08:40:13
    2 ACTIVE 15677701496 2019-05-21 08:40:13
    3 ACTIVE 15677701496 2019-05-21 08:40:13
    4 ACTIVE 15677701496 2019-05-21 08:40:13
    5 ACTIVE 15677701496 2019-05-21 08:40:13
    6 ACTIVE 15677701496 2019-05-21 08:40:13
    7 ACTIVE 15677701496 2019-05-21 08:40:13
    8 ACTIVE 15677701496 2019-05-21 08:40:13
    9 ACTIVE 15677701496 2019-05-21 08:40:13
   10 ACTIVE 15677701496 2019-05-21 08:40:13
   11 ACTIVE 15677701496 2019-05-21 08:40:13
   12 ACTIVE 15677701496 2019-05-21 08:40:13
   13 ACTIVE 15677701496 2019-05-21 08:40:13
13 rows selected.

RMAN> backup database format '/home/oracle/backup/book_%U';

Starting backup at 2019-05-21 08:42:53
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=17 device type=DISK
RMAN-06554: WARNING: file 1 is in backup mode
RMAN-06554: WARNING: file 2 is in backup mode
RMAN-06554: WARNING: file 3 is in backup mode
RMAN-06554: WARNING: file 4 is in backup mode
RMAN-06554: WARNING: file 5 is in backup mode
RMAN-06554: WARNING: file 6 is in backup mode
RMAN-06554: WARNING: file 7 is in backup mode
RMAN-06554: WARNING: file 8 is in backup mode
RMAN-06554: WARNING: file 9 is in backup mode
RMAN-06554: WARNING: file 10 is in backup mode
RMAN-06554: WARNING: file 11 is in backup mode
RMAN-06554: WARNING: file 12 is in backup mode
RMAN-06554: WARNING: file 13 is in backup mode
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00002 name=/mnt/ramdisk/book/sysaux01.dbf
input datafile file number=00003 name=/mnt/ramdisk/book/undotbs01.dbf
input datafile file number=00001 name=/mnt/ramdisk/book/system01.dbf
input datafile file number=00005 name=/mnt/ramdisk/book/example01.dbf
input datafile file number=00004 name=/mnt/ramdisk/book/users01.dbf
input datafile file number=00007 name=/mnt/ramdisk/book/undotbs02.dbf
input datafile file number=00008 name=/mnt/ramdisk/book/undotbs03.dbf
input datafile file number=00006 name=/mnt/ramdisk/book/tea01.dbf
input datafile file number=00009 name=/mnt/ramdisk/book/T01.dbf
input datafile file number=00010 name=/mnt/ramdisk/book/T02.dbf
input datafile file number=00011 name=/mnt/ramdisk/book/T03.dbf
input datafile file number=00012 name=/mnt/ramdisk/book/T04.dbf
input datafile file number=00013 name=/mnt/ramdisk/book/T05.dbf
channel ORA_DISK_1: starting piece 1 at 2019-05-21 08:42:53
channel ORA_DISK_1: finished piece 1 at 2019-05-21 08:43:08
piece handle=/home/oracle/backup/book_2pu2394d_1_1 tag=TAG20190521T084253 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:15
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
including current control file in backup set
including current SPFILE in backup set
channel ORA_DISK_1: starting piece 1 at 2019-05-21 08:43:09
channel ORA_DISK_1: finished piece 1 at 2019-05-21 08:43:11
piece handle=/home/oracle/backup/book_2qu2394s_1_1 tag=TAG20190521T084253 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:02
Finished backup at 2019-05-21 08:43:11
--//註:實際上也備份成功了,不過最好不要這樣.

$ ls -l /home/oracle/backup/book_2pu2394d_1_1
-rw-r----- 1 oracle oinstall 2380603392 2019-05-21 08:42:59 /home/oracle/backup/book_2pu2394d_1_1

3.解決很簡單,關閉熱備份模式就ok了:
SYS@book> alter database end backup;
Database altered.

SYS@book> select * from v$backup;
       FILE# STATUS                  CHANGE# TIME
------------ ------------------ ------------ -------------------
           1 NOT ACTIVE          15677701496 2019-05-21 08:40:13
           2 NOT ACTIVE          15677701496 2019-05-21 08:40:13
           3 NOT ACTIVE          15677701496 2019-05-21 08:40:13
           4 NOT ACTIVE          15677701496 2019-05-21 08:40:13
           5 NOT ACTIVE          15677701496 2019-05-21 08:40:13
           6 NOT ACTIVE          15677701496 2019-05-21 08:40:13
           7 NOT ACTIVE          15677701496 2019-05-21 08:40:13
           8 NOT ACTIVE          15677701496 2019-05-21 08:40:13
           9 NOT ACTIVE          15677701496 2019-05-21 08:40:13
          10 NOT ACTIVE          15677701496 2019-05-21 08:40:13
          11 NOT ACTIVE          15677701496 2019-05-21 08:40:13
          12 NOT ACTIVE          15677701496 2019-05-21 08:40:13
          13 NOT ACTIVE          15677701496 2019-05-21 08:40:13

4.另外的問題:
--//實際上打開熱備份並不是"凍結"文件頭,僅僅凍結scn.實際上你如果發alter system checkpoint;還是會更新文件頭的.
--//並且oracle實際上恢復從這個scn(alter system checkpoint命令的)開始恢復:
--//可以參考鏈接:http://blog.itpub.net/267265/viewspace-2152909/=>[20180413]熱備模式相關問題2.txt

SYS@book> alter tablespace users begin backup ;
Tablespace altered.

SYS@book> SELECT file#, CHECKPOINT_CHANGE#, CHECKPOINT_TIME,CREATION_CHANGE#  , RESETLOGS_CHANGE#,status, CHECKPOINT_COUNT,fuzzy,name,tablespace_name  FROM v$datafile_header where file# in (1,4);
FILE# CHECKPOINT_CHANGE# CHECKPOINT_TIME     CREATION_CHANGE# RESETLOGS_CHANGE# STATUS  CHECKPOINT_COUNT FUZ NAME                           TABLESPACE_NAME
----- ------------------ ------------------- ---------------- ----------------- ------- ---------------- --- ------------------------------ ---------------
    1        15677702312 2019-05-21 08:47:46                7            925702 ONLINE             13491 YES /mnt/ramdisk/book/system01.dbf SYSTEM
    4        15677702482 2019-05-21 08:50:00            16143            925702 ONLINE             13491 YES /mnt/ramdisk/book/users01.dbf  USERS

--//CHECKPOINT_CHANGE#發生變化.
SYS@book> alter system checkpoint ;
System altered.

SYS@book> SELECT file#, CHECKPOINT_CHANGE#, CHECKPOINT_TIME,CREATION_CHANGE#  , RESETLOGS_CHANGE#,status, CHECKPOINT_COUNT,fuzzy,name,tablespace_name  FROM v$datafile_header where file# in (1,4);
FILE# CHECKPOINT_CHANGE# CHECKPOINT_TIME     CREATION_CHANGE# RESETLOGS_CHANGE# STATUS  CHECKPOINT_COUNT FUZ NAME                           TABLESPACE_NAME
----- ------------------ ------------------- ---------------- ----------------- ------- ---------------- --- ------------------------------ ---------------
    1        15677702587 2019-05-21 08:51:37                7            925702 ONLINE             13492 YES /mnt/ramdisk/book/system01.dbf SYSTEM
    4        15677702482 2019-05-21 08:50:00            16143            925702 ONLINE             13492 YES /mnt/ramdisk/book/users01.dbf  USERS
--//file#=1的 CHECKPOINT_CHANGE#發生變化,但是file#=4的CHECKPOINT_CHANGE#沒有變化.CHECKPOINT_COUNT也是增加的.

select 15677702587,trunc(15677702587/power(2,32)) scn_wrap,mod(15677702587,power(2,32))  scn_base from dual
 15677702587     SCN_WRAP     SCN_BASE SCN_WRAP16 SCN_BASE16
------------ ------------ ------------ ---------- ----------
 15677702587            3   2792800699          3   a676c1bb

select 15677702482,trunc(15677702482/power(2,32)) scn_wrap,mod(15677702482,power(2,32))  scn_base from dual
 15677702482     SCN_WRAP     SCN_BASE SCN_WRAP16 SCN_BASE16
------------ ------------ ------------ ---------- ----------
 15677702482            3   2792800594          3   a676c152

BBED> p /d dba 4,1 kcvfh.kcvfhbcp.kcvcpscn
struct kcvcpscn, 8 bytes                    @152
   ub4 kscnbas                              @152      2792800699
   ub2 kscnwrp                              @156      3
--//發出alter system checkpoint時在熱備分模式要更新這裡的信息.

BBED> p /d dba 4,1 kcvfh.kcvfhckp.kcvcpscn
struct kcvcpscn, 8 bytes                    @484
   ub4 kscnbas                              @484      2792800594
   ub2 kscnwrp                              @488      3
--//文件頭scn

SYS@book> alter system checkpoint ;
System altered.

SYS@book> SELECT file#, CHECKPOINT_CHANGE#, CHECKPOINT_TIME,CREATION_CHANGE#  , RESETLOGS_CHANGE#,status, CHECKPOINT_COUNT,fuzzy,name,tablespace_name  FROM v$datafile_header where file# in (1,4);
FILE# CHECKPOINT_CHANGE# CHECKPOINT_TIME     CREATION_CHANGE# RESETLOGS_CHANGE# STATUS  CHECKPOINT_COUNT FUZ NAME                           TABLESPACE_NAME
----- ------------------ ------------------- ---------------- ----------------- ------- ---------------- --- ------------------------------ ---------------
    1        15677703057 2019-05-21 08:58:26                7            925702 ONLINE             13493 YES /mnt/ramdisk/book/system01.dbf SYSTEM
    4        15677702482 2019-05-21 08:50:00            16143            925702 ONLINE             13493 YES /mnt/ramdisk/book/users01.dbf  USERS

BBED> p /d dba 4,1 kcvfh.kcvfhbcp.kcvcpscn
struct kcvcpscn, 8 bytes                    @152
   ub4 kscnbas                              @152      2792801169
   ub2 kscnwrp                              @156      3

BBED> p /d dba 4,1 kcvfh.kcvfhckp.kcvcpscn
struct kcvcpscn, 8 bytes                    @484
   ub4 kscnbas                              @484      2792800594
   ub2 kscnwrp                              @488      3

select 15677703057,trunc(15677703057/power(2,32)) scn_wrap,mod(15677703057,power(2,32))  scn_base from dual
 15677703057     SCN_WRAP     SCN_BASE SCN_WRAP16 SCN_BASE16
------------ ------------ ------------ ---------- ----------
 15677703057            3   2792801169          3   a676c391

--//kcvfh.kcvfhbcp.kcvcpscn的信息發生了變化.這樣恢復實際上從2792801169開始恢復需要讀取的歸檔大大減少.


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 前面有一篇《在SQL中直接把查詢結果轉換為JSON數據》https://www.cnblogs.com/insus/p/10905566.html,是把table轉換為json。 現反過來,當SQL從前端接收過來的數據是JSON的話,需要把它轉換為TABLE。在MS SQL Server 2016有 ...
  • 緩存的受益與成本 1.受益 加速讀寫 CPU L1/L2/L3 Cache、瀏覽器緩存、Ehcache緩存資料庫結果 降低後端負載 後端伺服器通過前端緩存降低負載:業務端使用Redis降低後端MySQL的負載 加速讀寫 CPU L1/L2/L3 Cache、瀏覽器緩存、Ehcache緩存資料庫結果 ...
  • 根據劉鐵猛老師的教程,自己折騰一下 1. 安裝包准備 在Windows10 64bit上安裝,故需要準備vc++ 2013和2015的Redistributable的包,搜索即有,無需細說。 示例資料庫下載:搜索MySQL data example,下載世界地名示例資料庫和sakila資料庫即可。找 ...
  • 如何解決高併發秒殺的超賣問題 由秒殺引發的一個問題 秒殺最大的一個問題就是解決超賣的問題。其中一種解決超賣如下方式: 1 update goods set num = num - 1 WHERE id = 1001 and num > 0 我們假設現在商品只剩下一件了,此時資料庫中 num = 1; ...
  • 昨天給網站“搬家”(更換伺服器),我是在win7上安裝的 sql server2012,安裝過程很順利,用“Windows 身份驗證” 也可正常訪問。但是用sa用戶訪問資料庫出現了 錯誤:18456。 然後搜索瞭解決方案,還是沒能解決我的問題。後來根據線上出現問題的狀況大膽的假設問題所在。 說說遇到 ...
  • sql server2008的用戶許可權管理及其細緻。此處我也不知道是表揚還是批評。所以經常會遇到各種“對不起您沒有**許可權”的問題。 本次遇到的問題機器常見。在嘗試修改資料庫結構時提示"沒有CREATE TABLE許可權"。百度之,使用management tool 或者使用grant命令都無法正常授 ...
  • 1.row_number() 排序策略,連續排序,它會為查詢出來的每一行記錄生成一個序號,依次排序且不會重覆,例如1,2,3,4 SELECT names,dept,row_number() OVER(PARTITION BY dept ORDER BY age DESC) rank FROM wo ...
  • 前面新裝了11GR2 RAC,某天在做巡檢的時候發現alert日誌中存在如下報錯Fatal NI connect error 12170. VERSION INFORMATION: TNS for Linux: Version 11.2.0.4.0 - Production Oracle Beque ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...