oracle中rman备份语句及详细分析

合集下载

oracle数据库全库备份语句

oracle数据库全库备份语句

oracle数据库全库备份语句Oracle数据库是一种关系型数据库管理系统,提供了全库备份的功能,可以用来备份整个数据库。

下面列举了10个不同的Oracle数据库全库备份语句。

1. 使用RMAN备份全库:使用RMAN工具备份整个Oracle数据库,可以使用以下命令:```RMAN> backup database;```2. 使用expdp备份全库:使用expdp工具备份整个Oracle数据库,可以使用以下命令:```expdp system/password@database_name full=Y directory=backup_dir dumpfile=full_backup.dmp logfile=full_backup.log;```3. 使用exp备份全库:使用exp工具备份整个Oracle数据库,可以使用以下命令:```exp system/password@database_name full=y file=full_backup.dmp log=full_backup.log;4. 使用Data Pump备份全库:使用Data Pump工具备份整个Oracle数据库,可以使用以下命令:```expdp system/password@database_name full=Y directory=backup_dir dumpfile=full_backup.dmp logfile=full_backup.log;```5. 使用RMAN增量备份全库:使用RMAN工具进行增量备份,可以使用以下命令:```RMAN> backup incremental level 1 cumulative database;```6. 使用expdp表空间备份:使用expdp工具备份指定表空间的数据,可以使用以下命令:```expdp system/password@database_name tablespaces=tablespace_name directory=backup_dir dumpfile=tablespace_backup.dmplogfile=tablespace_backup.log;7. 使用exp表空间备份:使用exp工具备份指定表空间的数据,可以使用以下命令:```exp system/password@database_name tablespaces=tablespace_name file=tablespace_backup.dmp log=tablespace_backup.log;```8. 使用RMAN备份控制文件和参数文件:使用RMAN工具备份控制文件和参数文件,可以使用以下命令:```RMAN> backup current controlfile;```9. 使用expdp备份指定用户的数据:使用expdp工具备份指定用户的数据,可以使用以下命令:```expdp system/password@database_name schemas=user_name directory=backup_dir dumpfile=user_backup.dmp logfile=user_backup.log;```10. 使用exp备份指定用户的数据:使用exp工具备份指定用户的数据,可以使用以下命令:```exp system/password@database_name owner=user_name file=user_backup.dmp log=user_backup.log;```以上是10个不同的Oracle数据库全库备份语句,可以根据实际需求选择合适的备份方式进行数据库备份。

ORACLE查看RMAN的备份信息总结

ORACLE查看RMAN的备份信息总结

ORACLE查看RMAN的备份信息总结关于Oracle数据库的RMAN备份,除了邮件外,是否能通过其它⽅式检查RMAN备份的成功与失败呢?其实我们可以通过下⾯SQL脚本来检查某个时间段备份失败的记录:SELECT * FROM V$RMAN_STATUSWHERE START_TIME >= TO_DATE(&START_TIME,'YYYY-MM-DD HH24:MI:SS')AND END_TIME <= TO_DATE(&END_TIME ,'YYYY-MM-DD HH24:MI:SS')AND OPERATION ='BACKUP'AND STATUS !='COMPLETED'AND STATUS NOT LIKE'RUNNING%'查看备份成功的历史记录:SELECT * FROM V$RMAN_STATUSWHERE START_TIME >= TO_DATE(&START_TIME,'YYYY-MM-DD HH24:MI:SS')AND END_TIME <= TO_DATE(&END_TIME ,'YYYY-MM-DD HH24:MI:SS')AND OPERATION ='BACKUP'AND STATUS ='COMPLETED'其中STATUS主要有RUNNING、RUNNING WITH WARNINGS、RUNNING WITH ERRORS、COMPLETED、COMPLETED WITH WARNINGS、COMPLETED WITH ERRORS、FAILED等⼏种状态。

另外,如果你在命令窗⼝输⼊[oracle@MyDB ~]$ dateTue Jul 19 10:52:02 CST 2016[oracle@MyDB ~]$ rman target /Recovery Manager: Release 10.2.0.5.0 - Production on Tue Jul 19 10:52:13 2016Copyright (c) 1982, 2007, Oracle. All rights reserved.connected to target database: SCM2 (DBID=3990839260)RMAN>在V$RMAN_STATUS⾥⾯,你会看到插⼊了⼀条记录STATUS为RUNNING状态SQL> COL ROW_TYPE FOR A10;SQL> COL OPERATION FOR A10;SQL> COL COMMAND_ID FOR A20;SQL> COL STATUS FOR A30;SQL> COL OBJECT_TYPE FOR A16;SQL> SELECT ROW_TYPE, COMMAND_ID, OPERATION, STATUS,OBJECT_TYPE2 FROM V$RMAN_STATUS3 WHERE START_TIME >= TO_DATE('2016-07-19 10:52:00', 'YYYY-MM-DD HH24:MI:SS');ROW_TYPE COMMAND_ID OPERATION STATUS OBJECT_TYPE---------- -------------------- ---------- ----------------- ----------------SESSION 2016-07-19T10:52:13 RMAN RUNNING此时如果在RMAN中随意执⾏⼀个错误命令,如下所⽰[oracle@MyDB ~]$ rman target /Recovery Manager: Release 10.2.0.5.0 - Production on Tue Jul 19 10:52:13 2016Copyright (c) 1982, 2007, Oracle. All rights reserved.connected to target database: SCM2 (DBID=3990839260)RMAN> /RMAN-00571: ===========================================================RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============RMAN-00571: ===========================================================RMAN-00558: error encountered while parsing input commandsRMAN-01006: error signalled during parseRMAN-02001: unrecognized punctuation symbol "/"SQL> COL ROW_TYPE FOR A10;SQL> COL OPERATION FOR A10;SQL> COL COMMAND_ID FOR A20;SQL> COL STATUS FOR A30;SQL> COL OBJECT_TYPE FOR A16;SQL> SELECT ROW_TYPE, COMMAND_ID, OPERATION, STATUS,OBJECT_TYPE2 FROM V$RMAN_STATUS3 WHERE START_TIME >= TO_DATE('2016-07-19 10:52:00', 'YYYY-MM-DD HH24:MI:SS');ROW_TYPE COMMAND_ID OPERATION STATUS OBJECT_TYPE---------- -------------------- ---------- --------------------- ----------------SESSION 2016-07-19T10:52:13 RMAN RUNNING WITH ERRORS在RMAN中退出,此时你会看到STAUS记录从"RUNNING WITH ERRORS"变成了"COMPLETED WITH ERRORS"也就是说,你可以在这个视图⾥⾯查看在RMAN⾥⾯执⾏的⼀些操作,例如删除归档⽇志等,另外,如果要查看RMAN的输出,可以查看V$RMAN_OUTPUT,V$RMAN_OUTPUT 视图记录了RMAN⽣成的信息,这是在内存中额视图,不会记录到控制⽂件上。

oracle dg rman备份策略

oracle dg rman备份策略

oracle dg rman备份策略Oracle数据库的备份是非常重要的,可以在系统出现故障或数据丢失的情况下恢复数据库的完整性。

在Oracle数据库中,可以使用RMAN(Recovery Manager)来管理和执行备份和恢复操作。

RMAN是Oracle提供的一个备份恢复工具,可以通过RMAN备份策略来实现灵活、高效的数据库备份。

RMAN备份策略主要包括完全备份、增量备份和增量备份合并等几个方面。

1. 完全备份:完全备份是指备份整个数据库的操作。

在RMAN中使用“backup database”命令可以进行完全备份。

完全备份是数据库备份策略的基础,因为只有完全备份才能确保数据库的全部数据得到保存。

完全备份可以通过物理备份或逻辑备份来实现。

物理备份是指备份数据库文件本身,包括数据文件、控制文件和归档日志文件等。

逻辑备份是指将数据库中的逻辑对象(如表、视图、存储过程等)导出为可执行的SQL语句,并将其存储到备份集中。

2. 增量备份:增量备份是在完全备份的基础上,只备份数据库中自上次备份后有所修改的数据。

增量备份可以减少备份的数据量和备份时间,并且可以更快地进行恢复操作。

在RMAN中,可以通过“backup incremental”命令进行增量备份。

增量备份可以分为增量备份级别0和增量备份级别1。

增量备份级别0是指备份整个数据库,与完全备份相同;而增量备份级别1只备份自上次备份后有所修改的数据块。

3. 增量备份合并:随着时间的推移,增量备份产生的备份集可能会变得很大。

为了减少备份集的大小和提高恢复操作的效率,可以使用增量备份合并来合并增量备份集。

在RMAN中,可以使用“backup incremental ... merge”命令来合并增量备份集。

增量备份合并可以通过将最新的增量备份与之前的备份集合并来创建一个新的备份集,从而减少备份集的数量。

除了以上的备份策略,还可以通过设置保留策略来管理备份集的保留时间和数量。

ORACLE RAC数据库RMAN 备份与恢复

ORACLE RAC数据库RMAN 备份与恢复

rac数据库RMAN 备份与恢复一、数据库备份在主库上通过rman 每天对数据库进行备份,并且保留两份备份在主库删除归档和进行rman 备份的脚本:[oracle@rac1 arch]$ pwd/opt/app/arch[oracle@rac1 arch]$ more del_arch.shexport ORACLE_SID=orcl1export ORACLE_BASE=/opt/app/oracleexport ORACLE_TERM=xtermexport ORACLE_HOME=/opt/app/oracle/product/10.2.0/db_1source /opt/app/arch/orcl1/del_arch.listsource /opt/app/arch/orcl2/del_arch.list/opt/app/oracle/product/10.2.0/db_1/bin/rman target / log='/opt/app/arch/rman.log' <<EOFdelete obsolete recovery window of 3 days;crosscheck archivelog all;delete noprompt obsolete;delete noprompt expired archivelog all;crosscheck backup;delete noprompt expired backup;backup format='/opt/app/arch/rman/orcl_full_%U_%T' tag='orcl_full' database;backup current controlfile tag='orcl_ctlfile'format='/opt/app/arch/rman/orcl_ctlfile_%U_%T';backup spfile tag='orcl_spfile'format='/opt/app/arch/rman/orcl_spfile_%U_%T';exitEOF执行时间:[oracle@rac1 arch]$ crontab -l30 02 * * 0 /opt/app/arch/del_arch.sh30 02 * * 1 /opt/app/arch/del_arch.sh30 02 * * 2 /opt/app/arch/del_arch.sh30 02 * * 3 /opt/app/arch/del_arch.sh30 02 * * 4 /opt/app/arch/del_arch.sh30 02 * * 5 /opt/app/arch/del_arch.sh30 02 * * 6 /opt/app/arch/del_arch.sh每天的备份文件放在/opt/app/arch/rman/目录下二、数据库恢复如果数据库出现故障,可以从备份文件中恢复数据库,最早可以恢复到两天前的备份时间点RAC 下的RMAN 讲究的是备份和还原的策略要一致。

RMAN备份命令

RMAN备份命令

RMAN备份命令(转摘)1、切换服务器归档模式,如果已经是归档模式可跳过此步:%sqlplus /nolog (启动sqlplus)SQL> conn / as sysdba (以DBA身份连接数据库)SQL> shutdown immediate; (立即关闭数据库)SQL> startup mount (启动实例并加载数据库,但不打开)SQL> alter database archivelog; (更改数据库为归档模式)SQL> alter database open; (打开数据库)SQL> alter system archive log start; (启用自动归档)SQL> exit (退出)2、连接:%rman target=rman/rman@mydb (启动恢复管理器)3、基本设臵:RMAN> configure default device type to disk; (设臵默认的备份设备为磁盘) RMAN> configure device type disk parallelism 2; (设臵备份的并行级别,通道数)RMAN> configure channel 1 device type disk format '/backup1/backup_%U'; (设臵备份的文件格式,只适用于磁盘设备)RMAN> configure channel 2 device type disk format '/backup2/backup_%U'; (设臵备份的文件格式,只适用于磁盘设备)RMAN> configure controlfile autobackup on; (打开控制文件与服务器参数文件的自动备份)RMAN> configure controlfile autobackup format for device type disk to '/backu p1/ctl_%F'; (设臵控制文件与服务器参数文件自动备份的文件格式)4、查看所有设臵:RMAN> show all;5、查看数据库方案报表:RMAN> report schema;6、备份全库:RMAN> backup database plus archivelog delete input; (备份全库及控制文件、服务器参数文件与所有归档的重做日志,并删除旧的归档日志)7、备份表空间:RMAN> backup tablespace system plus archivelog delete input; (备份指定表空间及归档的重做日志,并删除旧的归档日志)_8、备份归档日志:RMAN> backup archivelog all delete input;9、复制数据文件:RMAN> copy datafile 1 to '/oracle/dbs/system.copy';10、查看备份和文件复本:RMAN> list backup;11、验证备份:RMAN> validate backupset 3;12、从自动备份中恢复服务器参数文件:RMAN> shutdown immediate; (立即关闭数据库)RMAN> startup nomount; (启动实例)RMAN> restore spfile to pfile '/backup1/mydb.ora' from autobackup; (从自动备份中恢复服务器参数文件)13、从自动备份中恢复控制文件:RMAN> shutdown immediate; (立即关闭数据库)RMAN> startup nomount; (启动实例)RMAN> restore controlfile to '/backup1' from autobackup; (从自动备份中恢复控制文件)13、恢复和复原全数据库:RMAN> shutdown immediate; (立即关闭数据库)RMAN> exit (退出)%mv /oracle/dbs/tbs_12.f /oracle/dbs/tbs_12.bak (将数据文件重命名)%mv /oracle/dbs/tbs_13.f /oracle/dbs/tbs_13.bak (将数据文件重命名)%mv /oracle/dbs/tbs_14.f /oracle/dbs/tbs_14.bak (将数据文件重命名)%mv /oracle/dbs/tbs_15.f /oracle/dbs/tbs_15.bak (将数据文件重命名)%rman target=rman/rman@mydb (启动恢复管理器)RMAN> startup pfile=/oracle/admin/mydb/pfile/initmydb.ora (指定初始化参数文件启动数据库)RMAN> restore database; (还原数据库)RMAN> recover database; (恢复数据库)RMAN> alter database open; (打开数据库)14、恢复和复原表空间:RMAN> sql 'alter tablespace users offline immediate'; (将表空间脱机) RMAN> exit (退出恢复管理器)%mv /oracle/dbs/users01.dbf /oracle/dbs/users01.bak (将表空间重命名) %rman target=rman/rman@mydb (启动恢复管理器)RMAN> restore tablespace users; (还原表空间)RMAN> recover tablespace users; (恢复表空间)RMAN> sql 'alter tablespace users online'; (将表空间联机)15、增量备份与恢复:第一天的增量基本备份:RMAN> backup incremental level=0 database plus archivelog delete input;第二天的增量差异备份:RMAN> backup incremental level=2 database plus archivelog delete input;第三天的增量差异备份:RMAN> backup incremental level=2 database plus archivelog delete input;第四天的增量差异备份:RMAN> backup incremental level=1 database plus archivelog delete input;第五天的增量差异备份:RMAN> backup incremental level=2 database plus archivelog delete input;第六天的增量差异备份:RMAN> backup incremental level=2 database plus archivelog delete input;第七天的增量差异备份:RMAN> backup incremental level=0 database plus archivelog delete input;增量恢复:RMAN> shutdown immediate;RMAN> exit%mv /oracle/dbs/tbs_12.f /oracle/dbs/tbs_12.bak%mv /oracle/dbs/tbs_13.f /oracle/dbs/tbs_13.bak%mv /oracle/dbs/tbs_14.f /oracle/dbs/tbs_14.bak%mv /oracle/dbs/tbs_15.f /oracle/dbs/tbs_15.bak%rman target=rman/rman@mydbRMAN> startup pfile=/oracle/admin/mydb/pfile/initmydb.oraRMAN> restore database;RMAN> recover database;RMAN> alter database open;Oracle备份与恢复案例一. 理解什么是数据库恢复当我们使用一个数据库时,总希望数据库的内容是可靠的、正确的,但由于计算机系统的故障(硬件故障、软件故障、网络故障、进程故障和系统故障)影响数据库系统的操作,影响数据库中数据的正确性,甚至破坏数据库,使数据库中全部或部分数据丢失。

简单易懂的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数据库备份方法。

Oracle 使用RMAN备份数据库文件和归档日志

Oracle  使用RMAN备份数据库文件和归档日志

Oracle 使用RMAN 备份数据库文件和归档日志当数据库打开时,可以使用RMAN BACKUP 命令备份如下对象:● 数据库● 表空间● 数据文件● 归档重做日志● 控制文件● 备份集在使用BACKUP 命令备份数据文件时,可以为其设置参数,定义备份段的文件名,文件数和每个输入文件的通道。

1.备份数据库如果备份操作是在数据库被安全关闭之后进行的,那么对整个数据库的备份是一致的;与之相对应,如果数据库是在打开状态下对整个数据库进行的备份,则该备份是非一致的。

非一致性备份整个数据库的操作步骤如下:(1)启动RMAN 并连接到目标数据库,输入BACKUP DATABASE 命令备份数据库。

在BACKUP 命令中可以指定FORMA T 参数,为RMAN 生成的每个备份片段指定一个惟一的名称,以及存储的位置。

C:\>rman target system/admin nocatalogRMAN> backup database format 'f:\oracle_backup\ora11g_%Y_%M_%D_%U.bak' maxsetsize=2G; 还可以为BACKUP 命令指定TAG 参数,为备份片段定义备份标签。

例如: RMAN>backup database tag='weekly_backup';(2)如果建立的是非一致性备份,那么必须在完成备份后对当前的联机重做日志进行归档,因为在使用备份恢复数据库需要使用当前重做日志中的重做记录。

RMAN>sql'alter system archive log current';(3)在RMAN 中执行LIST BACKUP OF DA TABASE 命令,查看建立的备份集与备份片段的信息。

RMAN> list backup of database;如果需要对整个数据库进行一致性备份,则首先需要关闭数据库,并启动数据库到MOUNT 状态。

Oracle Rman 命令详解

Oracle Rman 命令详解

一、list常用命令总结备忘list命令列出控制文件、RMAN恢复目录中备份信息,是我们对所有可见的数据库备份文件的一个最直观的了解的方法list incarnation;list backup summary;list backup of database summary;list backup of tablespace summary;list backup of datafile n,n summary;list archivelog all summary;list backup by file;list backup;list expired backup;list copy;list backup of spfile;list backup of controlfile;list backup datafile n,n,n;list backup tablespace tablespace_name;list backup of archivelog all;list backup of archivelog from scn ...;list backup of archivelog until scn ...;list backup of archivelog from sequence ..;list backup of archivelog until time 'sysdate-10';list backup of archivelog {all, from, high, like, logseq, low, scn, sequence, time, until};1. List 当前RMAN所备份的数据库:RMAN> list incarnation;汇总查询:--如果备份文件多的话多用这两个list命令可以对备份文件有个总体了解。

1.1. list backup summary; --概述可用的备份B 表示backupA 表示Archivelog、F 表示full backup、0,1,2 表示incremental level备份A 表示可用AVALIABLE、X 表示EXPIRED这个命令可以派生出很多类似命令,例如list backup of database summarylist backup of archivelog all summarylist backup of tablespace users summary;list backup of datafile n,n,n summary这些命令可以让我们对已有的备份文件有一个整体,直观的了解。

oracle备份数据库的sql语句

oracle备份数据库的sql语句

oracle备份数据库的sql语句Oracle备份数据库使用两种SQL语句:用于全文档备份和备份特定表/表空间。

1. 全文档备份Oracle用RMAN来备份数据库,其常用语句如下:(1) 启动备份:startup nomount;(2) 配置RMAN:rman target sys/password;(3) 备份数据库:backup database;(4) 保留几天的备份:configure retention policy to recovery window of num_days;(5) 进行压缩:configure compression device physical backupset on;(6) 备份到网络存储:backup device type 'SBT_TAPE' format 'my_backup_%U.dbf' database include current controlfile;(7) 停止RMAN:shutdown immediate;(8) 退出RMAN:exit;2. 备份特定表/表空间如果要备份特定表或者表空间,可以使用如下SQL语句:(1) 备份某个表空间:expdp system/password directory='data_pump_dir' dumpfile='tablename.dmp' tablespaces=tablename;(2) 备份某个表:expdp system/password directory='data_pump_dir' dumpfile='tablename.dmp' table=tablename;(3) 获取备份存储的位置:select * from dba_directories;(4) 检查备份的完整性:impdp system/password directory='data_pump_dir' dumpfile='tablename.dmp' table=tablenamelogfile='check_dumpfile.log' full=y;。

oracle数据库rman备份计划及恢复

oracle数据库rman备份计划及恢复

oracle数据库rman备份计划及恢复1.rman完全恢复的前提条件:历史的datafile,controlfile和spfile备份,加上完整的archivelog和完好的redolog。

2.rman备份脚本: a.RMAN 0级备份命令:run{allocate channel c1 type disk;allocate channel c2 type disk;allocate channel c3 type disk;backup incremental level 0 tag 'level0' format "E:\recovery_area\rfdb\rfdb\AUTOBACKUP\rman_dir\RFDB_level_0_%u_%s_%p" as compressed backupset database;sql "alter system archive log current";backup filesperset 3 format "E:\recovery_area\rfdb\rfdb\AUTOBACKUP\rman_dir\arch_%u_%s_%p_%c"archivelog all delete input; #备份归档可选,可以单独定期备份release channel c1;release channel c2;release channel c3;} b.RMAN 1级备份命令:run{allocate channel c1 type disk;allocate channel c2 type disk;allocate channel c3 type disk;backup incremental level 1 tag 'level1' format 'E:\recovery_area\rfdb\rfdb\AUTOBACKUP\rman_dir\RFDB_level_1_%u_%s_%p' as compressed backupset database;sql 'alter system archive log current';backup filesperset 3 format 'E:\recovery_area\rfdb\rfdb\AUTOBACKUP\rman_dir\arch_%u_%s_%p'archivelog all delete input; #备份归档可选,可以单独定期备份release channel c1;release channel c2;release channel c3;} c.rman删除备份命令(在保留最近⼀天备份的情况下,删除其他备份):DELETE NOPROMPT OBSOLETE RECOVERY WINDOW OF 1 DAYS; d.操作系统层⾯运⾏rman备份或删除命令(windows/linux):rman target sys/rf4rfvbgt56yhn@rfdb nocatalog CMDFILE 'D:\app\rman\rman_file\level_0.txt' log=E:\recovery_area\rfdb\rfdb\AUTOBACKUP\rman_dir\log\rman_level_0.log export ORACLE_BASE=/u01/app/oracleexport ORACLE_HOME=/u01/app/oracle/product/11.2.0/db1export ORACLE_SID=atestexport PATH=$ORACLE_HOME/bin:$PATHrman target sys/123456@atest nocatalog CMDFILE '/u01/rman/rman.sh' log=/u01/rman/rman.log00 02 * * 1 bash /u01/rman_file/run_rman_0.sh00 02 * * 3 bash /u01/rman_file/run_rman_0.sh00 02 * * 5 bash /u01/rman_file/run_rman_0.sh00 04 * * * bash /u01/rman_file/run_delete.sh34 11 * * * bash /u01/rman_file/run_rman_0.sh e.rman参数设置:RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON;RMAN> CONFIGURE DEFAULT DEVICE TYPE TO DISK;RMAN> CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE disk TO 2;RMAN> CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE disk TO 2;3.rman恢复a.拷贝datafile,controlfile和spfile的rman备份,以及完整的archivelog和完好的redolog⽂件到新的数据库。

oracle数据库全库备份语句

oracle数据库全库备份语句

oracle数据库全库备份语句Oracle数据库是一种关系型数据库管理系统,它可以用于存储和管理大量的结构化数据。

在进行数据库管理时,备份是非常重要的一项工作,它可以保护数据库免受数据丢失和系统故障的影响。

下面列举了十个Oracle数据库全库备份的语句,以供参考。

1. 使用RMAN进行全库备份:RMAN是Oracle提供的备份和恢复工具,可以通过以下命令进行全库备份:```RMAN> BACKUP DATABASE;```2. 使用EXPDP进行全库逻辑备份:EXPDP是Oracle提供的逻辑备份工具,可以通过以下命令进行全库备份:```expdp system/password@database_name directory=backup_directory dumpfile=full_backup.dmp full=y; ```3. 使用IMPDP进行全库逻辑恢复:IMPDP是Oracle提供的逻辑恢复工具,可以通过以下命令进行全库恢复:```impdp system/password@database_name directory=backup_directory dumpfile=full_backup.dmp full=y; ```4. 使用ALTER DATABASE进行全库备份:ALTER DATABASE命令可以备份整个数据库,可以通过以下命令进行全库备份:```SQL> ALTER DATABASE BACKUP CONTROLFILE TO '/path/to/backup/controlfile.bkp';```5. 使用Data Pump进行全库备份:Data Pump是Oracle提供的数据导入导出工具,可以通过以下命令进行全库备份:```SQL> EXPDP system/password@database_nameDIRECTORY=data_pump_dir DUMPFILE=full_backup.dmp FULL=YES;```6. 使用RMAN进行全库增量备份:RMAN可以进行增量备份,只备份发生变化的数据,可以通过以下命令进行全库增量备份:```RMAN> BACKUP INCREMENTAL LEVEL 1 DATABASE;```7. 使用EXP进行全库逻辑备份:EXP是Oracle提供的逻辑备份工具,可以通过以下命令进行全库备份:```exp system/password@database_name file=full_backup.dmp full=y;```8. 使用ALTER TABLESPACE进行表空间备份:可以通过ALTER TABLESPACE命令备份指定的表空间,可以通过以下命令进行表空间备份:```SQL> ALTER TABLESPACE tablespace_name BEGIN BACKUP;```9. 使用RMAN进行全库镜像备份:RMAN可以进行镜像备份,备份数据库的所有镜像拷贝,可以通过以下命令进行全库镜像备份:```RMAN> BACKUP AS COPY DATABASE;```10. 使用EXPDP进行全库逻辑备份,并压缩备份文件:可以通过以下命令进行全库逻辑备份,并对备份文件进行压缩:```expdp system/password@database_name directory=backup_directory dumpfile=full_backup.dmp full=y compression=all;```以上是十个Oracle数据库全库备份的语句,可以根据实际需求选择其中一种或多种备份方式进行数据库的备份工作。

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关键字。

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数据库备份语句,通过使用不同的备份语句可以实现对整个数据库、指定表空间、指定数据文件、归档日志等的备份。

RMAN的备份与恢复步骤详解

RMAN的备份与恢复步骤详解

RMAN的备份与恢复步骤详解RMAN(Recovery Manager)是Oracle数据库备份和恢复技术的核心工具,提供了一种集中管理和自动化备份和恢复操作的方式。

下面将详细介绍RMAN的备份与恢复步骤。

备份步骤:1.配置RMAN环境:确定RMAN备份目标、备份库、目标库的连接信息,并设置环境变量。

2.创建RMAN备份目标:使用CREATECATALOG命令创建RMAN备份目标,以存储备份信息和恢复目标的元数据。

3.创建备份策略:确定备份类型(完全备份、增量备份、增量备份级别等),备份周期(每日、每周)、备份级别(全局备份、局部备份)以及备份介质(磁盘、磁带)等。

4.执行备份命令:使用BACKUP命令执行备份操作。

根据备份策略选择相应的备份类型,并指定备份集的存储位置。

可以使用全量备份、增量备份或归档日志备份等方式进行备份。

5.备份验证和测试:使用RESTORE命令验证备份集是否可恢复。

可以恢复到测试库中,检查数据的完整性以及备份恢复的过程和时间。

恢复步骤:1.准备恢复环境:确定系统状态,关闭数据库、归档日志模式,备份控制文件,以备份增量恢复,恢复目标数据库的连接信息,并设置环境变量。

2.恢复控制文件:将备份的控制文件还原到指定位置,以获取数据库的结构信息。

3.恢复数据库文件:使用RESTORE命令恢复需要的数据文件。

可以选择完全恢复(使用全量备份和归档日志进行恢复)、增量恢复(使用增量备份和归档日志进行恢复)或点恢复(使用时间点或SCN号进行恢复)的方式。

4.打开数据库:使用OPENRESETLOGS命令打开数据库,恢复数据库文件到最新的状态。

5.检查恢复结果:验证恢复后数据库的完整性和一致性。

使用相应的SQL语句检查数据的正确性、索引的可用性和对象的有效性。

常见问题处理:1.恢复失败的处理:RMAN提供了很多失败后的处理命令,比如RECOVER命令来恢复损坏的数据文件,CROSSCHECK命令来检查备份文件的完整性等。

OracleRMAN操作详解

OracleRMAN操作详解

OracleRMAN操作详解RMAN(Recovery Manager):恢复管理器RMAN概念:RMAN: Recovery Manager,是备份和恢复数据库的管理⼯具建⽴备份和恢复的server process,在oracle server上做备份和恢复具有如下特点:1 )功能类似物理备份,但⽐物理备份强⼤ N 倍,从下⾯的特点可以看到;2 )可以压缩空块;3 )可以在块⽔平上实现增量;4 )可以把备份的输出打包成备份集,也可以按固定⼤⼩分割备份集;5 )备份与恢复的过程可以⾃动管理;6 )可以使⽤脚本(存在 Recovery catalog 中);RMAN的组成概念:RMAM client (RMAN客户端)⽤来操作备份与恢复的客户端应⽤,可以通过⽹络连接到⽬标数据库;target database(⽬标数据库)RMAN备份和恢复的数据库,就是⽬标库;你的备份和恢复的⽬标,就叫做⽬标库auxiliary database(辅助数据库)主库的副本,⼀般⽤于测试,主库与辅助库的DBID不同,DB_NAME可以不同Catalog database(恢复⽬录数据库)存放RMAN备份的元数据信息,默认存放在控制⽂件中,由于控制⽂件中分为循坏重⽤记录与⾮循环重⽤记录,备份信息属于循环重⽤记录,会不断被覆盖重⽤,默认会保留7天,保存时间有限,可以使⽤恢复⽬录数据库实现RMAN备份元数据信息的长久保存。

media manager(介质管理器)如果想要把备份⽂件存放到其他设备(例如带库)就需要介质管理器。

fast recovery area(闪回恢复区)默认情况下,RMAN会将备份存放在闪回恢复区中。

db_recovery_file_destdb_recovery_file_dest_size视图:v$recovery_file_destv$recovery_area_usagechannel(通道):RMAN⼯具到存储设备的数据流叫通道。

orcal数据备份语句

orcal数据备份语句

orcal数据备份语句Oracle数据库备份语句是数据库管理员经常使用的重要工具,它可以保护数据库的数据安全,防止数据丢失或损坏。

以下是一些常用的Oracle数据库备份语句:1. 全备份语句:RMAN> BACKUP DATABASE;这个语句将对整个数据库进行备份,包括数据文件、控制文件和日志文件。

2. 表空间备份语句:RMAN> BACKUP TABLESPACE example;这个语句将备份指定的表空间,可以用于恢复该表空间的数据。

3. 数据文件备份语句:RMAN> BACKUP DATAFILE 1 FORMAT '/backup/datafile1.bak';这个语句将备份指定的数据文件,可以用于恢复该数据文件的数据。

4. 控制文件备份语句:RMAN> BACKUP CURRENT CONTROLFILE FORMAT '/backup/controlfile.bak';这个语句将备份当前的控制文件,以便在需要时进行恢复。

5. 归档日志备份语句:RMAN> BACKUP ARCHIVELOG ALL FORMAT '/backup/archivelog.bak';这个语句将备份所有归档日志文件,用于保留数据库变更的历史记录。

6. 增量备份语句:RMAN> BACKUP INCREMENTAL LEVEL 1 DATABASE;这个语句将备份已更改的数据块,可以用于快速备份大型数据库。

7. 压缩备份语句:RMAN> BACKUP AS COMPRESSED BACKUPSET DATABASE;这个语句将备份数据库并使用压缩备份集来减小备份文件的大小。

8. 备份到远程服务器语句:RMAN> BACKUP DATABASE FORMAT '/backup/%d_%T_%U' TAG 'PROD_BACKUP'2> REMOTE 'ssh user@remotehost "/backup"' SECTION SIZE 10M;这个语句将备份数据库并将备份文件传输到远程服务器上的指定路径。

rman 参数

rman 参数

rman 参数RMAN(Recovery Manager)是Oracle数据库管理系统中的备份和恢复工具,它提供了广泛的参数选项,用于控制备份、还原和恢复操作的行为。

以下是RMAN的一些重要参数及其详细说明:1.TARGET●用法:TARGET {connect_string | /}●描述:指定要备份或恢复的目标数据库的连接字符串。

可以是用户名/密码@数据库实例或者使用连接描述符。

2.CATALOG●用法:CATALOG connect_string●描述:指定RMAN备份信息的目录数据库的连接字符串。

用于存储和管理备份集信息的中央目录数据库。

3.NOCATALOG●用法:NOCATALOG●描述:指示RMAN不使用目录数据库,而是在本地存储备份信息。

备份信息将存储在控制文件或备份集中。

4.AUXILIARY●用法:AUXILIARY connect_string●描述:指定辅助实例的连接字符串,用于执行复制、转换或迁移操作。

5.BACKUP●用法:BACKUP {backup_type} [backup_parameters]●描述:指定备份操作的类型和相关参数。

备份类型可以是整个数据库、表空间、数据文件、控制文件等。

6.RESTORE●用法:RESTORE {restore_type} [restore_parameters]●描述:指定还原操作的类型和相关参数。

还原类型可以是整个数据库、表空间、数据文件等。

7.RECOVER●用法:RECOVER {recover_type} [recover_parameters]●描述:指定恢复操作的类型和相关参数。

恢复类型可以是完全恢复、不完全恢复或取消更改等。

8.FORMAT●用法:FORMAT 'format_string'●描述:指定备份集或备份文件的命名格式。

可以使用变量和日期格式化选项来生成动态的命名格式。

9.TAG●用法:TAG 'tag_name'●描述:为备份集或备份文件指定标签。

windows-下的oracle数据库rman自动备份和恢复文档精选全文完整版

windows-下的oracle数据库rman自动备份和恢复文档精选全文完整版

可编辑修改精选全文完整版数据库rman备份恢复文档一.Rman简介RMAN是ORACLE提供的恢复和备份工具,是随Oracle服务器软件一同安装的工具软件,它可以用来备份和恢复数据库文件、归档日志和控制文件,用来执行完全或不完全的数据库恢复。

与传统工具相比,RMAN具有独特的优势:跳过未使用的数据块。

当备份一个RMAN 备份集时,RMAN不会备份从未被写入的数据块,而传统的方式无法获知那些是未被使用的数据块。

RMAN使用Oracle特有的二进制压缩模式,与传统备份的压缩方式相比,能够最大程度地压缩数据块中的一些典型数据。

二.系统规划数据库备份文件不建议与系统盘(C盘)、oracle数据文件存放盘(D 盘)存放在一起,本文单独存放于E盘。

注:在进行以下操作前要根据自己的环境建立如下目录“E:\orabackup\”,“’E:\archivelog_backup”,“E:/orabackup_script/”。

本文用到的命令中的标点均为英文字符下的标点。

三.设置oracle数据库为归档模式(ARCHIVELOG)按以下步骤操作,检查oracle数据库是否为归档模式。

1.选择“开始”→“系统”→“运行”,输入cmd,按回车。

2.输入“sqlplus”,按回车。

3.输入“system / as sysdba ”,按回车。

4.输入数据库system账号的密码,按回车。

5.查看数据库归档模式,输入“archive log list;”,按回车。

如下图所示。

如果“数据库日志模式”为“非存档模式”,则需按照如下步骤开启归档模式:1.设置数据库日志归档路径。

输入“alter system set log_archive_dest=’E:\archivelog_backup’ scope=spfile; ”,按回车。

2.关闭数据库。

输入“shutdown immediate;”,按回车。

3. 启动数据库到mount状态。

RMAN地备份与恢复步骤详解

RMAN地备份与恢复步骤详解

RMAN地备份与恢复步骤详解RMAN(Recovery Manager)是Oracle数据库中用于备份和恢复数据的工具。

RMAN提供了一种灵活、高效的备份和恢复机制,可以帮助数据库管理员有效地管理数据库的备份和恢复工作。

在本文中,我们将详细介绍RMAN备份与恢复的步骤和操作方法。

备份步骤:1.配置RMAN环境:在开始进行RMAN备份之前,首先需要配置RMAN环境。

这包括设置RMAN的环境变量、创建RMAN的配置文件以及配置RMAN的连接信息等操作。

您可以使用RMAN命令行或者RMAN配置助手来完成这些操作。

2.创建备份任务:在配置好RMAN环境之后,可以通过RMAN命令行或者RMAN配置助手来创建备份任务。

您可以选择全量备份、增量备份或者归档日志备份等不同类型的备份任务。

3. 执行备份任务:一旦创建了备份任务,就可以使用RMAN命令来执行备份任务。

您可以使用“backup database”命令来执行全量备份任务,使用“backup incremental”命令来执行增量备份任务,使用“backup archivelog”命令来执行归档日志备份任务等。

4. 监控备份过程:在执行备份任务的过程中,可以使用RMAN命令来监控备份的进度和状态。

您可以使用“show”命令来查看备份任务的进度、使用“list”命令来列出备份文件的信息等。

5. 完成备份任务:一旦备份任务执行完毕,可以使用RMAN命令来验证备份文件的完整性和一致性。

您可以使用“crosscheck”命令来验证备份文件的状态,使用“delete”命令来删除过期的备份文件等。

恢复步骤:1.配置RMAN环境:在开始进行RMAN恢复之前,需要先配置好RMAN的环境。

确保RMAN的环境变量、配置文件和连接信息都已经设置好。

2. 恢复数据库:如果数据库遇到了故障或者数据丢失的情况,可以使用RMAN命令来恢复数据库。

您可以使用“restore database”命令来还原数据库的备份文件,使用“recover database”命令来恢复数据库的数据文件。

oracle—rman备份使用方法

oracle—rman备份使用方法

RMAN(Recovery Manager)是Oracle数据库的备份和恢复工具,提供了强大的备份、恢复和数据库复制功能。

以下是使用RMAN进行备份的基本步骤:
1. 连接到 RMAN:
通过命令行或脚本连接到 RMAN。

在命令行中输入:
这会使用操作系统认证连接到默认的本地数据库实例。

2. 设置备份配置参数:
在 RMAN 中,您可以设置各种备份配置参数,例如备份类型、备份目标、备份文件位置等。

以下是一个设置备份参数的示例:
这将启用自动备份控制文件和配置备份文件的保存路径。

3. 执行备份:
执行备份命令以创建数据库备份。

以下是创建全库备份的示例:
您还可以根据需要选择性地备份表空间、数据文件等。

4. 查看备份:
您可以使用以下命令查看备份信息:
这将显示当前配置的备份。

5. 恢复数据库:
如果需要进行恢复,您可以使用 RMAN 执行还原和恢复操作。

以下是一个简单的例子:
这将还原数据库文件并应用必要的日志以完成数据库的恢复。

6. 退出 RMAN:
完成备份和恢复操作后,使用以下命令退出 RMAN:
这是一个基本的 RMAN 备份和恢复过程。

请注意,在实际环境中,您可能需要根据数据库的具体要求和策略进行更复杂的备份和恢复配置。

请参考 Oracle 官方文档以获取更详细的信息和高级用法。

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

Rman备份语句实例及详细分析
采用下面语句备份可以基本保证一个小型数据库的备份需求。

1rman备份语句实例和详解
RUN {
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'f:/oracle数据库备份/%F';
ALLOCATE CHANNEL CH1 DEVICE TYPE DISK FORMAT 'f:/oracle数据库备份/%U';
BACKUP DATABASE SKIP INACCESSIBLE FILESPERSET 10
PLUS ARCHIVELOG FILESPERSET 20
DELETE ALL INPUT;
RELEASE CHANNEL CH1;
}
ALLOCATE CHANNEL FOR MAINTENANCE DEVICE TYPE DISK;
CROSSCHECK BACKUPSET;
DELETE NOPROMPT OBSOLETE;
--将备份保留7天,过期则自动删除。

--控制文件自动备份
--设置控制文件在磁盘上控制路径和格式。

%F:一个基于DBID 唯一的名称,这个格式的形式为c-IIIIIIIIII-YYYYMMDD-QQ,其中IIIIIIIIII 为该数据库的DBID,YYYYMMDD 为日期,QQ 是一个1-256 的序列;
--设置通道的路径及格式。

%U:是%u_%p_%c的简写形式,利用它可以为每一个备份片段(即磁盘文件)生成一个唯一名称,这是最常用的命名方式;
%u:是一个由备份集编号和建立时间压缩后组成的8字符名称。

利用%u可以为每个备份集生成一个唯一的名称;
%p:表示备份集中备份片段的编号,从1 开始编号;
%c:备份片的拷贝数(从1开始编号);
--分配通道,自动备份归档日志。

--备份数据库,跳过磁盘上不可读的文件(SKIP INACCESSIBLE)
--自动删除已经备份的归档日志。

1)filesperset是每个备份集中包含的最大文件个数
2)应该生成2个备份集,每个备份集包含50个文件
3)如果没有datafilecopy那一句的话,应该是生成2个备份集,每个备份集包含3个文件
allocate channel 提供备份并发度,若平均文件数<filesperset则会按照平均文件数/备份集进行备份,若超过则按照filesperset的数量生成备份集;例如:
1、run {
allocate channel ch1 type disk;
allocate channel ch2 type disk;
backupdatafile 3,4,5,6 filesperset 3;
release channel ch1;
release channel ch2;
}
平均数是4(文件数)/2(channel数) = 2 ,小于filesperset 3,则生成2个备份集,每个备份集包含2个数据文件
2、run {
allocate channel ch1 type disk;
allocate channel ch2 type disk;
backupdatafile 3,4,5,6 filesperset 1;
release channel ch1;
release channel ch2;
}
则生成4个备份集,每个包含一个数据文件
2如何执行
1、在f盘根目录下新建一个文件夹,命名为:oracle数据库备份。

2、将上面脚本拷贝到一个txt文本文件中,将后缀修改为.rman放到d盘一个文件夹rman_backup下。

3、新建一个txt文件,将下面的语名拷贝到txt文件中,将后缀修改为bat,自己放置到一个合适的地方,如d盘根目录。

setoracle_sid=orcl
rman target / msglog d:\rman_backup\rman.log cmdfile=d:\rman_backup\rman.rman
说明:orcl是自己oracle中的实例。

4、从控制面板新建一个任务,执行上面的bat文件,控制为每天晚上23:00执行。

3说明
上面脚本,学习者可以根据自己的知识进行扩充,改善。

相关文档
最新文档