
Oracle Backup/Recovery
文章平均质量分 77
blockheading
Oracle rookie
展开
-
差异增量备份和累积增量备份
--差异增量备份和累积增量备份差异增量备份,会备份自上次同级或低级差异增量备份以来所有发生变化的数据块,差异增量是默认增量备份方式累积增量备份,会备份自上次0级备份以来发生变化的数据块。RMAN> backup incremental level 0 database format '/tmp/bak/incr0_%s_%p_%t.bak'; --0级增量备份,增量备份都原创 2016-11-29 21:25:55 · 1076 阅读 · 0 评论 -
闪回表和闪回事务处理查询
闪回表闪回表可以将表恢复到特定的时间点。闪回表是一个原位操作。数据库保持联机。使用闪回表可以将一个或多个表还原到特定时间点,而不需要还原备份。将从还原表空间检索数据来执行闪回表操作。需要具有对特定表的FLASHBACK ANY TABLE或FLASHBACK对象权限。需要对要闪回的表具有SELECT/INSERT/DELETE/ALTER权限。必须对要执行闪回操作的表启用行移动。原创 2016-12-26 22:00:46 · 499 阅读 · 0 评论 -
闪回查询和闪回版本查询实验
--闪回查询和闪回版本查询实验--准备数据库以进行闪回创建还原表空间启用自动还原管理指定还原保留时间和保证还原保留时间默认的数据库初始化参数UNDO_MANAGEMENT=AUTOUNDO_TABLESPACE='UNDOTBS1'UNDO_RETENTION=900闪回查询:用于查询指定时间点的所有数据。--使用timestamp闪回查询SYS@PR原创 2016-12-26 21:58:19 · 573 阅读 · 0 评论 -
用户进程错误
--用户进程错误[oracle@ocm1 ~]$ ps -ef|grep ora_|grep PROD1oracle 8783 1 0 07:28 ? 00:00:00 ora_pmon_PROD1oracle 8785 1 0 07:28 ? 00:00:00 ora_psp0_PROD1oracle 8787 1原创 2017-01-04 22:19:01 · 395 阅读 · 0 评论 -
闪回数据归档实验(Flashback Data Archive)
闪回数据归档实验(Flashback Data Archive)使用环境--11g开始有此功能--12c需要数据库没有插件库或版本为12.1.0.2及以后的版本实验--创建表空间用来存放闪回数据归档SYS@PROD1> create tablespace fda datafile '/u01/app/oracle/oradata/PROD1/fda01.dbf原创 2016-12-29 22:08:36 · 366 阅读 · 0 评论 -
闪回删除实验
--查看回收站功能是否打开SYS@PROD1> show parameter recyclebinNAME TYPE VALUE------------------------------------ ----------- ------------------------------recyclebin string on--模拟闪回删除SYS@原创 2016-12-29 22:09:06 · 222 阅读 · 0 评论 -
闪回数据库实验
--如何打开闪回数据库SYS@PROD1> select flashback_on from v$database;FLASHBACK_ON------------------NOSYS@PROD1> shutdown immediate --必须要一致性关闭Database closed.Database dismounted.ORACLE instance shut do原创 2016-12-29 22:09:32 · 260 阅读 · 0 评论 -
RMAN的监控和调整
并行备份集监控RMAN会话监控RMAN完成进度解释RMAN消息输出--并行备份集为提高性能,分配多个通道并将文件分配给特定通道。需要要I/O资源充足的时候。可以通过设置更改并行度。RMAN> show all;CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default手动原创 2016-12-20 20:56:17 · 614 阅读 · 0 评论 -
实验表空间时间点恢复(TSPITR)
--实验表空间时间点恢复(TSPITR)--10g,11g,12c cdb中操作相同--12c pdb需要在recover子句中指定pdb名在什么情况下适用:错误执行TRUNCATE TABLE;错误执行DROP TABLE;撤销只影响部分数据库的DML语句结果;在什么情况下不适用:表空间被删除;表空间被重命名;system,undo,sysaux不原创 2017-01-13 22:09:57 · 518 阅读 · 0 评论 -
实验表时间点恢复(Oracle 12c新功能)
--实验表时间点恢复(Oracle 12c新功能)--12c,备份归档均存在且可用[oracle@luo ~]$ rlwrap sqlplus sys/oracle@luo:1524/pdbwyzc as sysdbaSQL*Plus: Release 12.1.0.2.0 Production on Fri Jan 13 20:05:22 2017Copyrigh原创 2017-01-13 22:11:14 · 807 阅读 · 0 评论 -
使用RMAN DUPLICATE复制数据库(Oracle 10g)到本机
--使用RMAN DUPLICATE复制数据库(Oracle 10g)到本机--步骤1.创建辅助实例的Oracle口令文件。2.建立到辅助实例的Oracle Net连接(监听文件增加库的静态注册,本地命名增加本地远程库的名字)。3.创建辅助实例的初始化参数文件,并创建相关目录。4.在NOMOUNT模式下启动辅助实例。5.装载或打开目标数据库。6.确保备份和归档重原创 2017-01-11 21:15:18 · 1861 阅读 · 0 评论 -
使用RMAN DUPLICATE复制数据库(Oracle 11g)到本机
--使用RMAN DUPLICATE复制数据库(Oracle 11g)到本机--11g新功能:对正在运行的数据库进行克隆,不需要备份。--步骤1.创建辅助实例的Oracle口令文件。2.建立到辅助实例的Oracle Net连接(监听文件增加库的静态注册,本地命名增加本地远程库的名字)。3.创建辅助实例的初始化参数文件,并创建相关目录。4.在NOMOUNT模式原创 2017-01-12 23:30:08 · 1591 阅读 · 0 评论 -
使用RMAN DUPLICATE复制数据库(Oracle 12c)到本机
--使用RMAN DUPLICATE复制数据库(Oracle 12c)到本机--克隆CDB的方法与11g相同。--PDB的克隆比CDB的克隆要简单且快。--步骤--1.克隆本机pdb--create pluggable database pdb_new from pdb_old file_name_convert=('pdb_old路径','pdb_new路径');原创 2017-01-12 23:30:54 · 2450 阅读 · 0 评论 -
删除过多的归档日志释放空间
--删除过多的归档日志释放空间1.备份现有归档日志到备份磁盘2.释放空间--实验过程--通过RMAN查看现有归档RMAN> list copy; --通过RMAN查看现有归档specification does not match any control file copy in the repositoryList of Datafile Copies原创 2017-01-24 21:41:32 · 1661 阅读 · 0 评论 -
监控flash_recovery_area的使用情况(V$FLASH_RECOVERY_AREA_USAGE,V$RECOVERY_FILE_DEST)
--监控flash_recovery_area的使用情况(V$FLASH_RECOVERY_AREA_USAGE,V$RECOVERY_FILE_DEST)SYS@PROD1> select * from V$FLASH_RECOVERY_AREA_USAGE;FILE_TYPE PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE NUMBE原创 2017-03-08 19:51:22 · 6127 阅读 · 0 评论 -
使用alter database create datafile恢复丢失数据文件
--使用alter database create datafile恢复丢失数据文件SYS@PROD3> create table t tablespace t1 as select * from all_objects where rownum<100;Table created.SYS@PROD3> commit;Commit complete.SYS@PROD3> shu原创 2017-03-18 20:36:27 · 3023 阅读 · 0 评论 -
linux系统下从/proc中找回误删除的控制文件
--linux系统下从/proc中找回误删除的控制文件SYS@PROD3> select name from v$controlfile;NAME----------------------------------------------------------------------------------------------------/home/oracle/db1/cont原创 2017-03-18 20:47:04 · 1328 阅读 · 0 评论 -
Linux crontab定时执行任务
--Linux crontab定时执行任务基本格式 : * * * * * command 分 时 日 月 周 命令 第1列表示分钟1~59 每分钟用*或者 */1表示 第2列表示小时1~23(0表示0点) 第3列表示日期1~31 第4列表示月份1~12 第5列标识号星期0~6(0表示星期天) 第6列要运行的命令 --------------------------原创 2017-05-26 20:22:24 · 307 阅读 · 0 评论 -
模拟执行不完全恢复
--模拟执行不完全恢复0.备份需要是可用的。1.确定目标还原点:SCN、时间、还原点或日志序列号。2.相应的设置NLS环境变量。3.装载数据库。4.使用SET UNTIL、RESTORE和RECOVER命令准备并运行RUN块。5.在READONLY模式下打开数据库,并验证恢复点是否为所需要的恢复点。6.使用RESETLOGS打开数据库。SCOTT@P原创 2016-12-17 23:08:06 · 275 阅读 · 0 评论 -
非归档模式数据库恢复
1.使用rman备份恢复 --非归档只能在mount阶段能进行备份2.使用OS备份恢复1.system丢失关闭数据库。还原备份文件,控制文件,数据文件,日志文件,联机日志文件。通过noredo恢复数据库。如果有联机日志备份不需要恢复。打开数据库,整个数据库恢复到备份时间点,备份后的数据需要人为输入。2.undo丢失更改undo_management=man原创 2016-12-18 22:02:49 · 1284 阅读 · 0 评论 -
模拟执行灾难恢复
--执行灾难恢复灾难意味着丢失了整个目标数据库、恢复目录数据库、所有当前控制文件、所有联机重做日志文件和参数文件。灾难恢复包括还原和恢复目标数据库。备份集的最低要求:数据文件的备份。相应的归档重做日志文件。至少一个控制文件自动备份。恢复的基本过程:还原服务器参数文件的自动备份。启动目标数据库实例。从自动备份还原控制文件。装载数据库。还原数原创 2016-12-18 21:31:20 · 258 阅读 · 0 评论 -
配置RMAN的永久性参数
RMAN> show all; --或者查找V$RMAN_CONFIGURATIONRMAN configuration parameters for database with db_unique_name PROD1 are:CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS; --定义冗余数或恢复窗口CONFIGURE B原创 2016-12-11 21:48:48 · 996 阅读 · 0 评论 -
Oracle 12c中临时表空间丢失的处理和日志文件丢失的恢复方案
cdb,pdb分别有自己的临时表空间SQL> select name,con_id from v$tempfile;NAME CON_ID-------------------------------------------------------------------------------- ----------/u01/oracle/orada原创 2016-12-14 20:30:59 · 1243 阅读 · 0 评论 -
日志组状态及丢失的处理
--日志组状态及丢失的处理在任何给定时间,重做日志组的状态都会是以下值之一:CURRENT:LGWR当前正在向该重做日志组写入重做数据。ACTIVE:不再向该重做日志组写入数据,但是恢复实例时仍然需要它。INACTIVE:不再向该重做日志组写入数据,且恢复实例时也不再需要它。UNUSED:未被使用的日志组。清除日志文件:alter database cl原创 2016-12-14 20:32:35 · 1008 阅读 · 0 评论 -
临时表空间丢失处理
还原:从备份集中取出放回原来路径。还原到备份的时间点,丢失时间点后的数据。恢复:利用日志文件重做恢复数据。控制文件,数据文件需要恢复归档日志,spfile不需要恢复文件丢失的原因:用户错误应用程序错误介质故障关键性和非关键性:非关键性文件丢失是指数据库可以继续运行的故障。·通过创建一个新文件/重建文件/恢复丢失或损坏的文件关键性丢失:系统表空间,原创 2016-12-13 21:53:30 · 480 阅读 · 0 评论 -
模拟控制文件全部丢失与归档日志文件丢失的不完全恢复
--控制文件全部丢失,归档日志文件丢失--模拟实验环境SYS@PROD2> create table scott.c1 as select * from scott.dept; --创建c1表Table created.SYS@PROD2> alter system switch logfile;System altered.SYS@PROD2> archiv原创 2016-12-14 22:40:35 · 1179 阅读 · 0 评论 -
通过RMAN将数据库恢复到同类机异机
--通过RMAN将数据库恢复到同类机异机--下面开始讲源路径称为host1,新路径称为host2SYS@PROD2> select dbid from v$database; --查询DBID DBID----------1564287740RMAN> backup incremental level 0 as compressed backupset原创 2016-11-23 22:45:21 · 1042 阅读 · 0 评论 -
RMAN常用备份操作
--RMAN常用备份操作--备份参数文件,spfilebackup spfile;backup spfile format '/bak/sp.bmp';backup spfile format '+db/sp.ora';backup as copy spfile;backup as copy spfile format '...'; --印象副本当控制文件自动备原创 2016-12-13 16:19:35 · 380 阅读 · 0 评论 -
临时表空间空间不足解决方法
--临时表空间空间不足解决方法--关闭自动增长SYS@PROD2> select * from v$version;BANNER--------------------------------------------------------------------------------Oracle Database 11g Enterprise Edition R原创 2016-12-13 21:50:32 · 8450 阅读 · 0 评论 -
恢复目录浅析
恢复目录:复制控制文件数据,与控制文件相比可以存储更多的历史信息存储更长的备份历史服务与多个目标存储RMAN脚本可为所有已注册目标创建自定义报告可以使用BACKUP命令的KEEP FOREVER子句可以列出在给定时间位于或曾经位于目标数据库中的数据文件和表空间配置恢复目录数据库:创建恢复目录所用的表空间,这将称为恢复目录所有者的默认表空间。创建恢复目原创 2016-12-11 20:49:23 · 579 阅读 · 0 评论 -
丢失部分日志文件恢复
三种日志文件状态处理方法UNUSED INACTIVE --> alter database clear logfile group ACTIVE --> alter system checkpoint; --> alter database clear logfile group CURRENT -->alter system switch logfile; --> alte原创 2016-12-07 21:40:09 · 310 阅读 · 0 评论 -
在有全库备份的情况下恢复数据文件
1.丢失了system表空间,undo表空间shutdown immediateshutdown abortstartup mountrestore datafile recover database;alter database open;2.其他数据文件丢失run{sql 'alter tablespace restore tablesp原创 2016-12-07 21:44:12 · 252 阅读 · 0 评论 -
丢失控制文件恢复
1.部分丢失控制文件解决方法:关闭数据库复制存在的给予丢失的启动数据库2.丢失所有控制文件解决方法:利用备份恢复利用脚本重建控制文件--实验--1.部分丢失SYS@PROD1> select name from v$controlfile;NAME-----------------------------------------------原创 2016-12-07 22:30:28 · 298 阅读 · 0 评论 -
丢失索引表空间恢复
--丢失索引表空间恢复SYS@PROD2> create tablespace ind datafile '/u01/app/oracle/oradata/PROD2/ind.dbf' size 10m;Tablespace created.SYS@PROD2> conn scott/tigerConnected.SCOTT@PROD2> create index emp_原创 2016-12-15 23:15:09 · 304 阅读 · 0 评论 -
不同版本下密码文件丢失解决流程
--密码文件丢失解决流程重新创建口令验证文件--10g[oracle@luo ~]$ rm /u01/oracle/10g/dbs/orapwwyzc10g[oracle@luo ~]$ rlwrap sqlplus sys/oracle@wyzc10g as sysdbaSQL*Plus: Release 10.2.0.5.0 - Production on Tu原创 2016-12-15 23:16:37 · 549 阅读 · 0 评论 -
丢失undo表空间后恢复
丢失undo表空间1.利用RMAN恢复2.重建新的undo表空间(可以不关闭数据库)--实验--1.利用RMAN关库恢复SYS@PROD2> select name from v$datafile;NAME------------------------------------------------------------------------------原创 2016-12-16 20:56:45 · 494 阅读 · 0 评论 -
丢失非关键性文件的恢复
非关键性文件的丢失都不需要关闭数据库。关键性文件:undo,systemalter database datafile restore datafile recover datafile alter database datafile --实验SYS@PROD2> ho rm /u01/app/oracle/oradata/PROD2/example01.原创 2016-12-16 22:07:46 · 276 阅读 · 0 评论 -
恢复只读表空间
--恢复只读表空间1.只读表空间,在备份时为只读,故障时为只读。 --还原有故障的数据文件。2.只读表空间,在备份时为只读,故障时为可写。 --还原备份数据文件,重做recover。3.只读表空间,在备份时为可写,故障时为只读。 --还原备份数据文件,重做recover。--实验--第一种情况:只读表空间,在备份时为只读,故障时为只读。SYS@PROD2> al原创 2016-12-17 21:43:46 · 338 阅读 · 0 评论 -
Linux nohup永久执行
nohup是永久执行&是指在后台运行运行 nohup --helpRun COMMAND, ignoring hangup signals. 可以看到是“运行命令,忽略挂起信号”就是指,用nohup运行命令可以使命令永久的执行下去,和用户终端没有关系,例如我们断开SSH连接都不会影响他的运行,注意了nohup没有后台运行的意思;&才是后台运行&是转载 2017-06-15 21:04:58 · 2342 阅读 · 0 评论