程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> 一步一步學RMAN第二篇 RMAN命令知多少

一步一步學RMAN第二篇 RMAN命令知多少

編輯:關於SqlServer

菩薩蠻·命令知多少

上一節講了怎麼進,這節開講知多少

內容雖不多,排列費思量。

RMAN貴靈活,應用是根本。

無須死硬記,策略定規則。

RMAN非常有意思,做為一個專業的備份工具,它幾乎考慮到了備份及恢復過程中可能遇到的各種操作,由此它也提供了各種各樣的命令來為這些操作提供便利。

一、啟動、關閉數據庫

在RMAN中執行關閉和啟動數據庫的命令與SQL環境下一模一樣。當然,在執行之前,你需要先連接到目標數據庫,如例:

C:\Documents and Settings\Administrator>rman target /

恢復管理器: 版本9.2.0.1.0 - Production

Copyright (c) 1995, 2002, Oracle Corporation.  All rights reserved.

連接到目標數據庫: JSSWEB (DBID=3391142503)

RMAN> shutdown immediate

正在使用目標數據庫控制文件替代恢復目錄

數據庫已關閉

數據庫已卸載

Oracle 例程已關閉

RMAN> startup

已連接到目標數據庫 (未啟動)

Oracle 例程已啟動

數據庫已加載

數據庫已打開

系統全局區域總計     143727516 字節

Fixed Size                      453532 字節

Variable Size                109051904 字節

Database Buffers              33554432 字節

Redo Buffers                    667648 字節

RMAN>

當然,你也可以執行startup mount,然後再利用alter database open命令打開數據庫以及shutdown normal,shutdown abort等。總之啟動和關閉的命令跟SQL環境下相比就仨字兒:完全一模一樣。

二、執行操作系統命令

Rman支持通過執行host命令暫時退出rman的命令提示符而進入到操作系統的命令環境,如下例:

RMAN> host;

Microsoft Windows [版本 5.2.3790]

(C) 版權所有 1985-2003 Microsoft Corp.

C:\Documents and Settings\Administrator>cd \

C:\>exit

主機命令完成

RMAN>

執行完系統命令後可以再通過執行exit退出到rman命令提示符下。

三、執行SQL語句

在rman中執行sql語句稍嫌復雜。

在RMAN的命令提示符後輸入SQL命令,然後在一對單引號(雙引號亦可)中輸入要執行的SQL語句,例如:

RMAN> SQL 'ALTER SYSTEM ARCHIVE LOG ALL';

需要注意的一點是,rman中的sql環境不能執行SELECT語句,或者說執行不報錯,但你也看不到結果。

其實我們完全可以通過更取巧的方式來實現更強大的SQL操作,比如利用第二項介紹的內容,如下:

RMAN> host;Microsoft Windows [版本 5.2.3790]

(C) 版權所有 1985-2003 Microsoft Corp.

C:\Documents and Settings\Administrator>sqlplus /nolog

SQL*Plus: Release 9.2.0.1.0 - Production on 星期四 6月 28 17:40:24 2007

Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.

SQL> conn / as sysdba

已連接。

SQL> select sysdate from dual;

SYSDATE

----------

28-6月 -07

SQL> exit

從Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production

With the Partitioning, OLAP and Oracle Data Mining options

JServer Release 9.2.0.1.0 - Production中斷開

C:\Documents and Settings\Administrator>exit

主機命令完成

RMAN>

蘿卜青菜各有所愛,大家是愛蘿卜還是愛青菜啊,愛蘿卜的請選第一種,愛青菜的請選第二種。我愛吃肉,我要找第三種出來~~~~~

四、定義RMAN配置

RMAN中具有一系列的默認配置,這些配置決定了備份和恢復時的一些選項(此節內容枯燥,眼神不好的同學請自覺跳過),比如:

自動分配通道的配置;

備份保留時間的配置;

備份集大小的限制;

啟用或禁用備份優化功能;

鏡像復制的備份數量;

是否將某個表空間排隊在備份之外。

修改配置是通過CONFIGURE命令,具體用法非常簡單,但由於可供configure的配置非常之多,這裡不做詳細介紹,在後續實際演練章節中會有體現。當然,有心的朋友也可以通過google搜索一下,更有耐心的新友就等著看俺寫的外傳。

五、顯示RMAN默認配置

Rman中可以利用show命令來顯示當前的配置參數。例如,通過SHOW ALL顯示當前所有的配置。

RMAN> show all;

RMAN 配置參數為:

CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 3 DAYS;

CONFIGURE BACKUP OPTIMIZATION OFF; # default

CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default

CONFIGURE CONTROLFILE AUTOBACKUP ON;

CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'd:/backup/%F';

CONFIGURE DEVICE TYPE DISK PARALLELISM 1; # default

CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default

CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default

CONFIGURE MAXSETSIZE TO UNLIMITED; # default

CONFIGURE SNAPSHOT CONTROLFILE NAME TO 'F:\ORAHOME1\DATABASE\SNCFJSSWEB.ORA'; #

default

RMAN>

注:配置項後面跟了# default的表示該項仍是初始配置,未被修改過。

該命令使用也相當靈活,其後跟上不同的類型的配置參數,即可以顯示不同類型的配置,如:

SHOW CHANNEL;

SHOW DEVICE TYPE;

SHOW DEFAULT DEVICE TYPE;

六、列出備份信息

LIST命令用來查看通過RMAN生成的備份信息,照我看來,這個應用應該會非常少,大家了解即可(引申一下,不僅是list,俺基本認為備份這種操作,腳本一次定型,100年不許變,哪有DBA天天干備份恢復的,如果真是這樣,那您這庫。。。。。。)。例如:列出數據庫中所有文件的備份信息:

RMAN>LIST BACKUP OF DATABASE;

列出指定表空間的備份信息:

RMAN>LIST COPY OF TABLESPACE 'SYSTEM';

列出指定數據文件的備份信息:

RMAN>LIST BACKUP OF DATAFILE 'F:\ORAHOME1\ORADATA\JSSWEB\JWEB.ORA';

七、刪除備份

用於刪除RMAN備份記錄及相應的物理文件。當使用RMAN執行備份操作時,會在RMAN資料庫中生成RMAN備份記錄,並且RMAN備份記錄被存放在目標數據庫的控制文件中,如果配置了恢復目錄,那麼該備份記錄也會被存放到恢復目錄中。

1、刪除陳舊備份

當使用RMAN執行備份操作時,RMAN會根據備份冗余策略確定陳舊備份。      

RMAN> delete obsolete;

2、刪除EXPIRED備份

執行crosscheck命令核對備份集,那麼會將該備份集標記為EXPIRED狀態。為了刪除相應的備份記錄,可以執行delete expired backup命令。      

RMAN> delete expired backup;

3、刪除EXPIRED副本

RMAN> delete expired copy;

4、刪除特定備份集

RMAN> delete backupset 19;

5、刪除特定備份片

RMAN> delete backuppIEce 'd:\backup\DEMO_19.bak';

6、刪除所有備份集

RMAN> delete backup;

7、刪除特定映像副本

RMAN> delete datafilecopy 'd:\backup\DEMO_19.bak';

8、刪除所有映像副本

RMAN> delete copy;

9、在備份後刪除輸入對象

RMAN> delete archivelog all delete input;

RMAN> delete backupset 22 format = ''d:\backup\%u.bak'' delete input;  

八、批處理命令RUN

重頭戲來了,大家鼓掌。謝謝大家的掌聲,RUN的用法雖然很簡單,但run太重要了,是我們後面幾乎經常都要遇到的,也正因此我不敢貿然下筆,於是我准備。。。。。。。。

。。。。。。。。。。。。。。。

。。。。。。。。。。。。。。。

。。。。。。。。。。。。。。。

。。。。。。。。。。。。。。。

。。。。。。。。。。。。。。。

。。。。。。。。。。。。。。。

。。。。。。。。。。。。。。。

。。。。。。。。。。。。。。。

。。。。。。。。。。。。。。。

。。。。。。。。。。。。。。。跳票,下章見~~

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved