rman示例

合集下载

RMAN备份与恢复之完全备份和增量备份

RMAN备份与恢复之完全备份和增量备份

完全备份:完全备份是指对数据库中使用过的所有数据块进行备份,当然,没有使用过的数据块是不做备份的。

在进行完全备份时,RMAN将数据文件中所有的非空白数据块都复制到备份集中。

在RMAN中,可以对数据文件进行完全备份或者增量备份,但是对控制文件和日志文件只能进行完全备份。

在一个完全数据库备份中,将所有的数据库文件,复制到闪回恢复区。

完全备份实例:【例】通过BACKUP FULL语句,对数据库执行完全备份。

使用TAG参数和FORMAT参数,指定备份文件位置以及备份文件的名称格式。

如下:RMAN>RUN{2> #BACKUP THE COMPLETE DATABASE3> ALLOCATE CHANNEL ch1 TYPE DISK;4> BACKUP FULL5> TAG full_db_backup FORMAT"E:\app\backup\db_t%t_s%s_p%p" (database);6> RELEASE CHANNEL ch1;7> }【例】在RMAN中执行LIST命令,查看建立的备份集与备份段信息,如下:RMAN> LIST BACKUP OF DATABASE;增量备份:增量备份就是将那些与前一次备份相比发生变化的数据块复制到备份集中。

进行增量备份时,RMAN会读取整个数据文件,通过RMAN可以为单独的数据文件、表空间、或者整个数据库进行增量备份。

在RMAN中建立的增量备份可以具有不同的级别,每个级别都使用一个不小于0的整数来标识,也就是在BACKUP命令中使用LEVEL关键字指定的,例如LEVEL = 0表示备份级别为0,LEVEL = 1表示备份级别为1。

增量备份的方式:差异增量备份:使用增量备份,执行0级增量备份,也就是实现完全数据库备份,如下:RMAN>RUN{2> ALLOCATE CHANNEL ch1 TYPE disk;3> BACKUP INCREMENTAL LEVEL 0 ASCOMPRESSED BACKUPSET DATABASE;4> RELEASE CHANNEL ch1;5> }在备份语句中没有指定备份文件的保存路径,默认情况下,保存在app\Administrator\flash_recovery_area\ORCL目录下。

简单易懂的linux下oracle数据库备份方法

简单易懂的linux下oracle数据库备份方法

简单易懂的linux下oracle数据库备份方法在Linux环境下,对Oracle数据库进行备份是一项至关重要的工作,以确保数据的安全性和完整性。

下面将为您介绍一种简单易懂的Oracle数据库备份方法。

一、准备工作1.确保已安装Oracle数据库,并正确配置环境变量。

2.确保有足够的权限(如:dba权限)进行数据库备份操作。

3.了解数据库的名称、表空间等信息,以便进行正确的备份。

二、备份方法1.使用RMAN工具进行备份RMAN(Recovery Manager)是Oracle提供的一个强大的备份和恢复工具。

以下是一个简单的RMAN备份示例:a.连接到目标数据库:```rman target /```b.使用RMAN进行备份:```backup database;```这将备份整个数据库,包括控制文件和归档日志。

c.退出RMAN:```exit;```2.使用Oracle SQL命令进行备份a.使用SQL*Plus连接到目标数据库:```sqlplus / as sysdba```b.使用SQL命令备份整个数据库:```alter database backup controlfile to trace;```这将生成控制文件的备份脚本。

c.使用SQL命令备份表空间:```backup tablespace <表空间名称> to disk;```这将备份指定的表空间。

d.退出SQL*Plus:```exit;```三、备份文件的存储1.将备份文件存储在安全的磁带上或磁盘上。

2.建议将备份文件存储在不同的物理位置,以防止数据丢失。

四、定期检查备份1.定期检查备份文件是否完整、可用。

2.定期进行恢复测试,以确保备份的有效性。

通过以上步骤,您已经了解了一种简单易懂的Linux下Oracle数据库备份方法。

rman检查坏块的几种方法

rman检查坏块的几种方法

rman检查坏块的几种方法以rman检查坏块的几种方法为标题,写一篇文章。

一、引言在数据库管理中,坏块是指物理存储介质中出现的损坏或不可访问的数据块。

坏块可能会导致数据丢失或数据库无法正常运行。

因此,及时发现和修复坏块是数据库管理的重要任务之一。

本文将介绍使用rman工具检查坏块的几种方法。

二、检查数据文件中的坏块1. 使用RMAN的validate命令RMAN提供了validate命令来检查数据库中的坏块。

可以使用以下命令检查指定数据文件中的坏块:RMAN> validate datafile <datafile_number>;该命令将对指定的数据文件进行坏块检查,并输出检查结果。

如果存在坏块,将会显示相关的错误信息。

2. 使用RMAN的blockrecover命令blockrecover命令可以用于修复数据库中的坏块。

在使用该命令之前,需要先执行validate命令来检查坏块。

然后,可以使用以下命令来修复坏块:RMAN> blockrecover datafile <datafile_number> block<block_number>;该命令将尝试修复指定数据文件中指定块的坏块。

修复过程可能需要一定的时间,取决于坏块的数量和大小。

三、检查控制文件中的坏块1. 使用RMAN的validate命令除了数据文件,控制文件中的坏块也可能导致数据库无法正常运行。

可以使用RMAN的validate命令来检查控制文件中的坏块:RMAN> validate controlfile;该命令将对控制文件进行坏块检查,并输出检查结果。

如果存在坏块,将会显示相关的错误信息。

2. 使用RMAN的restore命令如果控制文件中存在坏块,可以使用RMAN的restore命令来恢复控制文件。

在执行恢复之前,需要先备份当前的控制文件。

可以使用以下命令进行恢复:RMAN> restore controlfile from '<backup_location>';该命令将从指定的备份位置恢复控制文件,并替换掉当前的坏块控制文件。

rman duplicate copy datafile

rman duplicate copy datafile

rman duplicate copy datafile
`RMAN DUPLICATE COPY DATAFILE` 是 Oracle RMAN(Recovery Manager)中的一条命令,用于复制数据库中的数据文件。

以下是一个示例,展示如何使用 `RMAN DUPLICATE COPY DATAFILE` 命令来复制数据文件:
```sql
RMAN DUPLICATE COPY DATAFILE
2> '/u01/app/oracle/oradata/orcl/data01.dbf'
3> TO '/u02/app/oracle/oradata/orcl/data01_copy.dbf'
4> FORMAT '/u02/app/oracle/oradata/orcl/backupset/%U';
```
在上述示例中,我们使用 `RMAN DUPLICATE COPY DATAFILE` 命令来执行复制操作。

以下是对每个参数的解释:
- `2>`:指定要复制的源数据文件的路径。

- `3>`:指定要复制到的目标路径。

- `4>`:指定复制后的数据文件的格式。

请注意,在使用 `RMAN DUPLICATE COPY DATAFILE` 命令之前,你需要确保已经正确配置了 RMAN 并连接到适当的数据库。

如果你需要更详细的信息或帮助,请提供更多上下文,我将尽力为你提供更准确的回答。

Oracle_RMAN命令详解

Oracle_RMAN命令详解

RMAN命令详解命令概述当用RMAN执行各种操作时,它可以使用独立命令(Standalone Command)和作业命令(Job Command)两种类型的命令。

独立命令是指可以单独执行的命令,在RMAN中,除了SET和SWITCH等少数命令外,大部分命令都是可以单独执行的。

如:RMAN> backup format ‘/backup/nicholas/%d_%s.bak’ tablespace system;作业命令是指以成组方式执行的命令,这些命令组成一个run模块,以脚本的方式被执行。

当需要使用多个RMAN命令来完成某项任务时,应该以作业命令的方式执行。

在RMAN中除了少数几个命令外,大部分命令都能用来构成命令模块。

如:RMAN> run{2> allocate channel c1 type disk;3> backup format '/backup/nicholas/%d_%s.bak' tablespace nicholas;4> release channel c1;5> }在RMAN提示符下不仅可以运行RMAN命令,还可以执行DML语句。

当运行DML语句时,必须以关键字sql开始:RMAN> sql “create tablespace user022>datafile ‘’/opt/oracle/oradata/nicholas/users01.db’’ size 100m”注意,如果SQL字符串包含单引号,则需要用两个单引号,并且SQL字符串需要用双引号引起来。

否则只需要将SQL用单引号引起来即可。

当使用恢复目录存放RMAN资料库时,可以在恢复目录中建立存储脚本,执行必须将它们放在run块内运行。

如:RMAN> run{execute script recov_01;}在RMAN中还可以运行操作系统命令,同样也要将这些OS命令放在run模块中,除了要用引号将命令引起来之外,还必须在要命令前加上host关键字。

oracle删除恢复语句举例

oracle删除恢复语句举例

oracle删除恢复语句举例如何使用Oracle删除和恢复数据。

Oracle是一种功能强大的数据库管理系统,它提供了许多功能来操作数据库中的数据,包括删除和恢复数据。

在本文中,我们将一步一步地介绍如何使用Oracle进行数据删除和恢复,并举例说明。

第一步:连接到数据库首先,您需要连接到要删除或恢复数据的Oracle数据库。

您可以使用sqlplus命令行工具或任何其他数据库管理工具(如SQL Developer)连接到数据库。

例如,使用sqlplus命令行工具,您可以执行以下命令连接到数据库:sqlplus username/password@database其中“username”是您的数据库用户名,“password”是您的数据库密码,“database”是您要连接的数据库的SID或服务名称。

第二步:备份数据(可选)在执行任何删除操作之前,我们建议您先备份数据库以防止意外删除数据。

备份数据库可以确保您有一个可用的数据库副本,以便在需要时恢复数据。

备份数据库的方法很多,您可以使用Oracle提供的备份工具(如RMAN)或者使用其他第三方备份工具。

第三步:删除数据一旦连接到数据库并备份数据(如果需要),您可以开始删除数据。

在Oracle中,删除数据有两种常用方法:使用DELETE语句或使用TRUNCATE TABLE语句。

使用DELETE语句删除数据:DELETE FROM table_name WHERE condition;在上述命令中,您需要将“table_name”替换为要删除数据的表名,并使用“condition”指定要删除的数据行。

条件可以是任何适用的WHERE子句,以选择要删除的数据行。

例如,假设我们有一个名为“employees”的表,其中包含员工的姓名和年龄。

要删除年龄大于30岁的员工,我们可以执行以下命令:DELETE FROM employees WHERE age > 30;使用TRUNCATE TABLE语句删除数据:TRUNCATE TABLE table_name;在上述命令中,您只需要指定要删除数据的表名即可。

orcle数据库备份语句

orcle数据库备份语句

orcle数据库备份语句Oracle数据库备份是一项非常重要的任务,可以保障数据的安全性和完整性。

在进行数据库备份时,我们可以使用不同的语句和方法来完成备份操作。

以下是一些常用的Oracle数据库备份语句:1. 使用RMAN备份整个数据库:RMAN是Oracle推荐的备份工具,可以使用以下语句备份整个数据库:```RMAN> BACKUP DATABASE;```2. 使用RMAN备份指定表空间:如果只需要备份数据库中的特定表空间,可以使用以下语句:```RMAN> BACKUP TABLESPACE tablespace_name;```3. 使用RMAN备份指定数据文件:如果只需要备份数据库中的特定数据文件,可以使用以下语句:```RMAN> BACKUP DATAFILE 'datafile_path';4. 使用RMAN备份指定控制文件:控制文件是数据库的关键组成部分,可以使用以下语句备份控制文件:```RMAN> BACKUP CURRENT CONTROLFILE;```5. 使用RMAN备份归档日志:归档日志包含了数据库的所有更改记录,可以使用以下语句备份归档日志:```RMAN> BACKUP ARCHIVELOG ALL;```6. 使用EXPDP备份数据库:EXPDP是Oracle提供的数据泵工具,可以使用以下语句备份整个数据库:```expdp username/password directory=directory_name dumpfile=dumpfile_name.dmp full=yes;7. 使用EXPDP备份指定表:如果只需要备份数据库中的特定表,可以使用以下语句:```expdp username/password directory=directory_name dumpfile=dumpfile_name.dmp tables=table_name;```8. 使用EXPDP备份指定表空间:如果只需要备份数据库中的特定表空间,可以使用以下语句:```expdp username/password directory=directory_name dumpfile=dumpfile_name.dmp tablespaces=tablespace_name;```9. 使用EXPDP备份指定用户:如果只需要备份数据库中的特定用户,可以使用以下语句:```expdp username/password directory=directory_name dumpfile=dumpfile_name.dmp schemas=user_name;```10. 使用EXPDP备份指定数据文件:如果只需要备份数据库中的特定数据文件,可以使用以下语句:```expdp username/password directory=directory_name dumpfile=dumpfile_name.dmp filesperset=1 include=datafile:'datafile_path';```总结:以上是一些常用的Oracle数据库备份语句,通过使用不同的备份语句可以实现对整个数据库、指定表空间、指定数据文件、归档日志等的备份。

Linux脚本中调用SQL,RMAN脚本

Linux脚本中调用SQL,RMAN脚本

Linux脚本中调⽤SQL,RMAN脚本Linux/Unix shell脚本中调⽤或执⾏SQL,RMAN 等为⾃动化作业以及多次反复执⾏提供了极⼤的便利,因此通过Linux/Unix shell来完成的相关⼯作,也是DBA必不可少的技能之⼀。

本⽂针对Linux/Unix shell脚本调⽤sql, rman 脚本给出了相关⽰例。

⼀、由shell脚本调⽤sql,rman脚本1. 1、shell脚本调⽤sql脚本2. #⾸先编辑sql⽂件3. oracle@SZDB:~> more dept.sql4. connect scott/tiger5. spool /tmp/dept.lst6. set linesize 100 pagesize 807. select * from dept;8. spool off;9. exit;10.11. #编辑shell脚本⽂件,在shell脚本内调⽤sql脚本12. oracle@SZDB:~> more get_dept.sh13. #!/bin/bash14.15. # set environment variable16.17. if [ -f ~/.bashrc ]; then18. . ~/.bashrc19. fi20.21. export ORACLE_SID=CNMMBO22. sqlplus -S /nolog @/users/oracle/dept.sql #注意此处执⾏sql脚本的⽅法 -S 表⽰以静默⽅式执⾏23. exit24.25. #授予脚本执⾏权限26. oracle@SZDB:~> chmod 775 get_dept.sh27.28. -->执⾏shell脚本29. oracle@SZDB:~> ./get_dept.sh30.31. DEPTNO DNAME LOC32. ---------- -------------- -------------33. 10 ACCOUNTING NEW YORK34. 20 RESEARCH DALLAS35. 30 SALES CHICAGO36. 40 OPERATIONS BOSTON37.38. 2、shell脚本调⽤rman脚本39. #⾸先编辑RMAN脚本40. oracle@SZDB:~> more rman.rcv41. RUN {42. CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;43. CONFIGURE BACKUP OPTIMIZATION ON;44. CONFIGURE CONTROLFILE AUTOBACKUP ON;45. CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/users/oracle/bak/%d_%F';46. ALLOCATE CHANNEL CH1 TYPE DISK MAXPIECESIZE=4G;47. ALLOCATE CHANNEL CH2 TYPE DISK MAXPIECESIZE=4G;48. SET LIMIT CHANNEL CH1 READRATE=10240;49. SET LIMIT CHANNEL CH1 KBYTES=4096000;50. SET LIMIT CHANNEL CH2 READRATE=10240;51. SET LIMIT CHANNEL CH2 KBYTES=4096000;52. CROSSCHECK ARCHIVELOG ALL;53. DELETE NOPROMPT EXPIRED ARCHIVELOG ALL;54. BACKUP55. DATABASE FORMAT '/users/oracle/bak/%d_FULL__%U';56. SQL 'ALTER SYSTEM ARCHIVE LOG CURRENT';57. BACKUP ARCHIVELOG ALL FORMAT '/users/oracle/bak/%d_LF_%U' DELETE INPUT;58. DELETE NOPROMPT OBSOLETE;59. RELEASE CHANNEL CH1;60. RELEASE CHANNEL CH2;63. #编辑shell脚本⽂件,在shell脚本内调⽤rman脚本64. oracle@SZDB:~> more rman_bak.sh65. #!/bin/bash66.67. # set environment variable68.69. if [ -f ~/.bashrc ]; then70. . ~/.bashrc71. fi72.73. export ORACLE_SID=CNMMBO74. $ORACLE_HOME/bin/rman target / cmdfile=/users/oracle/rman.rcv log=/users/oracle/bak/rman.log75. exit76.77. #授予脚本执⾏权限78. oracle@SZDB:~> chmod 775 rman_bak.sh79.80. #执⾏shell脚本81. oracle@SZDB:~> ./rman_bak.sh⼆、嵌⼊sql语句及rman到shell脚本1. 1、直接将sql语句嵌⼊到shell脚本2. oracle@SZDB:~> more get_dept_2.sh3. #!/bin/bash4. # Author : Robinson Cheng5. # Blog : /robinson_06126.7. # set environment variable8.9. if [ -f ~/.bashrc ]; then10. . ~/.bashrc11. fi12.13. export ORACLE_SID=CNMMBO14. sqlplus -S /nolog <<EOF #EOF在此表⽰当输⼊过程中碰到EOF后,整个sql脚本输⼊完毕15. connect scott/tiger16. spool /tmp/dept.lst17. set linesize 100 pagesize 8018. select * from dept;19. spool off;20. exit; #退出sqlplus 环境21. EOF22. exit #推出shell脚本23.24. #授予脚本执⾏权限25. oracle@SZDB:~> chmod u+x get_dept_2.sh26.27. #执⾏shell脚本28. oracle@SZDB:~> ./get_dept_2.sh29.30. DEPTNO DNAME LOC31. ---------- -------------- -------------32. 10 ACCOUNTING NEW YORK33. 20 RESEARCH DALLAS34. 30 SALES CHICAGO35. 40 OPERATIONS BOSTON36.37. 2、直接将sql语句嵌⼊到shell脚本(⽅式⼆,使⽤管道符号>代替spool来输出⽇志)38. oracle@SZDB:~> more get_dept_3.sh39. #!/bin/bash40.41. # set environment variable42.43. if [ -f ~/.bashrc ]; then44. . ~/.bashrc47. export ORACLE_SID=CNMMBO48. sqlplus -S /nolog 1>/users/oracle/dept.log 2>&1 <<EOF49. connect scott/tiger50. set linesize 80 pagesize 8051. select * from dept;52. exit;53. EOF54. cat /users/oracle/dept.log55. exit56.57. #另⼀种实现⽅式,将所有的sql语句输出来⽣成sql脚本后再调⽤58. oracle@SZDB:~> more get_dept_4.sh59. #!/bin/bash60.61. # set environment variable62.63. if [ -f ~/.bashrc ]; then64. . ~/.bashrc65. fi66.67. export ORACLE_SID=CNMMBO68. echo "conn scott/tiger69. select * from dept;70. exit;" >/users/oracle/get_dept.sql71. sqlplus -silent /nolog @get_dept.sql 1>/users/oracle/get_dept.log 2>&172. cat get_dept.log73. exit74.75. 3、将rman脚本嵌⼊到shell脚本76. oracle@SZDB:~> more rman_bak_2.sh77. #!/bin/bash78.79. # set environment variable80.81. if [ -f ~/.bashrc ]; then82. . ~/.bashrc83. fi84.85. export ORACLE_SID=CNMMBO86. $ORACLE_HOME/bin/rman log=/users/oracle/bak/rman.log <<EOF87. connect target /88. RUN {89. CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;90. CONFIGURE BACKUP OPTIMIZATION ON;91. CONFIGURE CONTROLFILE AUTOBACKUP ON;92. CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/users/oracle/bak/%d_%F';93. ALLOCATE CHANNEL CH1 TYPE DISK MAXPIECESIZE=4G;94. ALLOCATE CHANNEL CH2 TYPE DISK MAXPIECESIZE=4G;95. SET LIMIT CHANNEL CH1 READRATE=10240;96. SET LIMIT CHANNEL CH1 KBYTES=4096000;97. SET LIMIT CHANNEL CH2 READRATE=10240;98. SET LIMIT CHANNEL CH2 KBYTES=4096000;99. CROSSCHECK ARCHIVELOG ALL;100. DELETE NOPROMPT EXPIRED ARCHIVELOG ALL;101. BACKUP102. DATABASE FORMAT '/users/oracle/bak/%d_FULL__%U';103. SQL 'ALTER SYSTEM ARCHIVE LOG CURRENT';104. BACKUP ARCHIVELOG ALL FORMAT '/users/oracle/bak/%d_LF_%U' DELETE INPUT;105. DELETE NOPROMPT OBSOLETE;106. RELEASE CHANNEL CH1;107. RELEASE CHANNEL CH2;108. }109. EXIT;110. EOF111. exit112.113. #授予脚本执⾏权限114. oracle@SZDB:~> chmod u+x rman_bak_2.sh115.116. #执⾏shell脚本117. oracle@SZDB:~> ./rman_bak_2.sh118. RMAN> RMAN> 2> 3> 4> 5> 6> 7> 8> 9> 10> 11> 12> 13> 14> 15> 16> 17> 18> 19> 20> 21> RMAN> oracle@SZDB:~>。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一个完整的Oracle rman备份恢复参考示例时间:2008-05-29 00:00 来源: 作者: 点击: 4122 次【字号:大中小】一个完整的Oracle rman备份恢复参考示例,阅读一个完整的Oracle rman备份恢复参考示例,完整的Oracle rman备份恢复参考示例:1、建rman库作为repository $more createrman_db1.sh set echo on spool makedb1.log create database rman datafile完整的Oracle rman备份恢复参考示例:1、建rman库作为repository$more createrman_db1.shset echo onspool makedb1.logcreate database rmandatafile '/export/home/oracle/oradata/rman_data/system.dbf' size 50m autoextend on next 640Klogfile '/export/home/oracle/oradata/rman_data/redo0101.log' SIZE 10M,'/export/home/oracle/oradata/rman_data/redo0201.log' SIZE 10Mmaxdatafiles 30maxinstances 8maxlogfiles 64character set US7ASCIInational character set US7ASCII;disconnectspool offexit@/export/home/oracle/8.1.6/rdbms/admin/catalog.sql;REM ********** ALTER SYSTEM TABLESPACE *********ALTER TABLESPACE SYSTEMDEFAULT STORAGE ( INITIAL 64K NEXT 64K MINEXTENTS 1 MAXEXTENTS UNLIMITED PCTINCREASE 50);ALTER TABLESPACE SYSTEMMINIMUM EXTENT 64K;REM ********** TABLESPACE FOR ROLLBACK **********CREATE TABLESPACE RBS DATAFILE'/export/home/oracle/oradata/rman_data/rbs.dbf' size 50mAUTOEXTEND ON NEXT 512KMINIMUM EXTENT 512KDEFAULT STORAGE ( INITIAL 512K NEXT 512K MINEXTENTS 10 MAXEXTENTS UNLIMITED PCTINCREASE 0 );REM ********** TABLESPACE FOR TEMPORARY **********CREATE TABLESPACE TEMP DATAFILE'/export/home/oracle/oradata/rman_data/temp.dbf'size 50mAUTOEXTEND ON NEXT 64KMINIMUM EXTENT 64KDEFAULT STORAGE ( INITIAL 64K NEXT 64K MINEXTENTS 1 MAXEXTENTS UNLIMITED PCTINCREASE 0) TEMPORARY;REM **** Creating four rollback segments ****************CREATE PUBLIC ROLLBACK SEGMENT RBS_0 TABLESPACE RBSSTORAGE ( OPTIMAL 64000K );ALTER ROLLBACK SEGMENT "RBS_0" ONLINE;REM **** SYS and SYSTEM users ****************alter user sys temporary tablespace TEMP;alter user system temporary tablespace TEMP;disconnectspool offexit$more createrman_db3.shspool crdb3.log@/export/home/oracle/8.1.6/rdbms/admin/catproc.sql@/export/home/oracle/8.1.6/rdbms/admin/caths.sql@/export/home/oracle/8.1.6/rdbms/admin/otrcsvr.sqlconnect system/manager@/export/home/oracle/8.1.6/sqlplus/admin/pupbld.sql disconnectspool offexit2、建repository存放的表空间和rman用户$more createrman_db4.shconnect internalcreate tablespace rman_tsdatafile '/export/home/oracle/oradata/rman_data/rman_ts.dbf' size 20M default storage (initial 100K next 100K pctincrease 0); create user rman_hainan identified by rman_hainan temporary tablespace TEMPdefault tablespace rman_ts quota unlimited onrman_ts;grant recovery_catalog_owner to rman_hainan;grant connect ,resource to rman_hainan;3、建catalog,注册目标数据库$more createrman_db5.shrman catalog rman_hainan/rman_hainan@rman msglog=rman.log create catalog ;exit;rman target sys/oracle@db1connect catalog rman_hainan/rman_hainan@rmanregister database;exit;4、可以开始做备份了5、做全备$more rmanshell. /export/home/oracle/.profilerman rcvcat rman_hainan/rman_hainan@rman target / cmdfile/export/home/oracle/backup_level0.rcv log /export/home/oracle/backup.log$more backup_level0.rcvresync catalog;run {allocate channel t1 type disk;backupincremental level 0skip inaccessibletag hot_db_bk_level0filesperset 3format '/export/home/oracle/bk_%s_%p_%t.bk'(database);sql 'alter system archive log current';backupfilesperset 10format '/export/home/oracle/a1_%s_%p_%t.ac'(archivelog all delete input);backupformat '/export/home/oracle/df_t%t_s%s_p%p.ct'current controlfile ;}6、做增备$more rmanshell1rman rcvcat rman_hainan/rman_hainan@rman target / cmdfile backup_level1.rcv logbackup.log$more backup_level1.rcvresync catalog;run {allocate channel t1 type disk;backupincremental level 1skip inaccessibletag hot_db_bk_level1filesperset 3format 'bk_%s_%p_%t.bk1'(database);sql 'alter system archive log current';backupfilesperset 10format 'a1_%s_%p_%t.ac1'(archivelog all delete input);backup current controlfile;}1、删除旧的全备$rman rcvcat rman_hainan/rman_hainan@rman target /Recovery Manager: Release 8.1.6.0.0 - ProductionRMAN-06005: connected to target database: TEST (DBID=1692992254)RMAN-06008: connected to recovery catalog databaseRMAN> list backupset;RMAN-03022: compiling command: listList of Backup SetsKey Recid Stamp LV Set Stamp Set Count Completion Time------- ---------- ---------- -- ---------- ---------- ----------------------38 145 399987408 0 399987406 153 11-JUN-00根据key来删除旧的备份。

RMAN> allocate channel for maintenance type disk;RMAN> change backupset 169 delete; ----------THIS IS THE COMMAND TO REMOVE THE ENTRY & OS FILE做完后可以看到list backupset和操作系统的文件都没有了。

相关文档
最新文档