当前位置:文档之家› Oracle 10g 数据库闪回的配置与使用详解

Oracle 10g 数据库闪回的配置与使用详解

Oracle 10g 数据库闪回的配置与使用详解

执行以下的SQL语句:

1.sqlplus sys/passwd@tns_name as sysdba

2.

3.sql>shutdown immediate ;//关闭数据库

4.

5.sql>startup mount;//启动数据库控制文件,让实例与数据库关连,还有两种unmount启动数据库实例,open控制文件找到并打开数据文件与日志文件,启动数据库

6.

7.sql>alter database archivelog;//启动归档

8.

9.sql>alter datbase flashback on;

10.

11.sql>select flashback_on from v$database;//查看启动结果,如果flashback_on的值为on,说明启动成功

12.

13.sql>show parameter recyclebin;//如果要使用表的闪回,recyclebin(回收站)就得打开

这样Oracle 10g数据库的闪回就配置好了。

如果要使用数据库闪回,则需要执行以下的代码:

1.sqlplus sys/passwd@tns_name as sysdba

2.

3.sql>shutdown immediate ;//关闭数据库

4.

5.sql>startup mount;//启动数据库控制文件,让实例与数据库关连,还有两种unmount启动数据库实例,open控制文件找到并打开数据文件与日志文件,启动数据库

6.

7.sql>flashback database to timestamp to_timestamp('2011-08-08 09-14-01','yyyy-mm-dd hh24:mi:ss'');//闪回数据库

8.

9.sql>alter database open resetlogs;//必须在open后面加入resetlogs或者noresetlogs不然会报出ora-01589错误

如果要闪回表,代码如下:

1.flashback table table_name to timestamp to_timestamp('2011-08-08 09-14-01','yyyy-mm-dd hh24:mi:ss'');

表删除以后的闪回:

1.flashback table table_name to before drop;

如果这时出现ora-38305错误。就先执行:

1.alter table table_name enable row movement;

来源:网络编辑:联动北方技术论坛

实验8-Oracle数据库备份与恢复

实验8 Oracle数据库备份与恢复 1 实验目的 (1)掌握Oracle数据库各种物理备份方法。 (2)掌握Oracle数据库各种物理恢复方法。 (3)掌握利用RMAN工具进行数据库的备份与恢复。 (4)掌握数据的导入与导出操作。 2 实验要求 (1)对BOOKSALES数据库进行一次冷备份。 (2)对BOOKSALES数据库进行一次热备份。 (3)利用RMAN工具对BOOKSALES数据库的数据文件、表空间、控制文件、初始化参数 文件、归档日志文件进行备份。 (4)利用热备份恢复数据库。 (5)利用RMAN备份恢复数据库。 (6)利用备份进行数据库的不完全恢复。 3 实验步骤 (1)关闭BOOKSALES数据库,进行一次完全冷备份。 select file_name from dba_data_files; select member from v$logfile; select value from v$parameter where name='control_files';

(2)启动数据库后,在数据库中创建一个名为cold表,并插入数据,以改变数据库的状态。 CREATE TABLE COLD( ID NUMBER PRIMARY KEY, NAME VARCHAR2(25) ); (3)利用数据库冷备份恢复BOOKSALES数据库到备份时刻的状态并查看恢复后是否

存在cold表。 (4)将BOOKSALES数据库设置为归档模式。 1.1 shutdown immediate 正常关闭数据 1.2 startup mount;将数据库启动到mount状态 3)、关闭flash闪回数据库模式,如果不关闭的话,在后面关闭归档日志的时候就会出现讨厌的ora-38774错误。 alter database flashback off 1.3 alter database archivelog;发出设置归档模式的命令 1.4 alter database open;打开数据库 1.5 再次正常关闭数据库,并备份所有的数据文件和控制文件 1.6archive log list;在将数据库设置为归档模式后,可以执行此命令进行确认 1.6.1 Database log mode 为Archive Mode说明当前的数据库为归档模式 1.6.2 Automatic archival为Enable说明启动了自动归档。

Oracle发展历程

Oracle数据库发展历程 一、oracle数据库的发展历程 本节中,我们主要介绍Oracle的发展历程。 1977年,Larry Ellison、Bob Miner和Ed Oates等人组建了Relational软件公司(Relational Software Inc.,RSI)。他们决定使用C语言和SQL界面构建一个关系数据库管理系统(Relational Database Management System,RDBMS),并很快发布了第一个版本(仅是原型系统)。 1979年,RSI首次向客户发布了产品,即第2版。该版本的RDBMS可以在装有RSX-11操作系统的PDP-11机器上运行,后来又移植到了DEC VAX系统。 1983年,发布的第3个版本中加入了SQL语言,而且性能也有所提升,其他功能也得到增强。与前几个版本不同的是,这个版本是完全用C语言编写的。同年,RSI更名为Oracle Corporation,也就是今天的Oracle公司。 1984年,Oracle的第4版发布。该版本既支持VAX系统,也支持IBM VM操作系统。这也是第一个加入了读一致性(Read-consistency)的版本。 1985年,Oracle的第5版发布。该版本可称作是Oracle发展史上的里程碑,因为它通过SQL*Net引入了客户端/服务器的计算机模式,同时它也是第一个打破640KB内存限制的MS-DOS 产品。 1988年,Oracle的第6版发布。该版本除了改进性能、增强序列生成与延迟写入(Deferred Writes)功能以外,还引入了底层锁。除此之外,该版本还加入了PL/SQL和热备份等功能。这时Oracle已经可以在许多平台和操作系统上运行。 1991年,Oracle RDBMS的6.1版在DEC VAX平台中引入了Parallel Server选项,很快该选项也可用于许多其他平台。 1992年,Oracle 7发布。Oracle 7在对内存、CPU和I/O的利用方面作了许多体系结构上的变动,这是一个功能完整的关系数据库管理系统,在易用性方面也作了许多改进,引入了SQL*DBA工具和database角色。

ORACLE数据库应急预案

中关村软件园数据中心 数据库系统应急预案 一、总则 为了有效应对ORACLE数据库各类突发事故(事件),力争实现早发现、早报告、早控制、早解决,保护系统数据的安全,将突发公共事件造成的损失降到最低程度,制定本预案。 应急处置的原则是以人为本,统一指挥,各负其责、反应迅速,处理果断、防患未然,消灭初险、及时上报,如实准确。 本预案适用于ORACLE数据库可能发生突发事故(事件)的应急处置。 二、基本概况 ORACLE数据库当前共有*个服务器,*个实例。 数据库详情列表 三、应急管理机构、联系方式及职责 24小时的应急联系人和电话: 应急工作人员安排表

维护人员: 四、数据库系统发生紧急状况时的处置措施 数据库个别业务性能问题 1、大部分业务基本正常,个别业务长时间执行未成功 根据应用的pid、sid等信息,找到数据库中对应的session、SQL。得到该SQL的执行计划。1)执行$ORACLE_BASE/sql/show_spid.sql即可根据SID快速获取操作系统进行号spid的信息; 2)执行$ORACLE_BASE/sql/get_by_spid.sh spid,即可根据操作系统进程号依次打印执行的SQL语句和执行计划; 3)执行$ORACLE_BASE/sql/showsql_pid.sql即可根据pid快速获取执行的SQL语句 4)执行$ORACLE_BASE/sql/showsql_sid.sql即可根据sid快速获取执行的SQL语句 ?如果执行计划不恰当,需要分析执行计划变化的原因(如索引不正确、统计信息过时、绑定变量偷窥等)采取相应的错误如添加缺失的索引、重新收集统计信息等,评估中止该业务的影响,尝试停止该SQL的执行后,重新收集相关表的统计信息,使业务SQL能按正确的执行计划执行。 ?如果执行计划正确,SQL却长时间不能返回结果,则按照以下办法尽快收集必要信息,再重启任务。 $ sqlplus "/as sysdba" oradebug setospid oradebug unlimit oradebug dump processstate 10 oradebug tracefile_name

Oracle数据库10g备份与恢复(技术白皮书)

Oracle数据库10g备份和恢复:RMAN和闪回技术 Oracle 白皮书 2004 年 6 月

发展和革命 (3) 恢复管理器 (3) 快速恢复区 (4) 自动存储管理 (6) 更改跟踪文件 (6) 增量更新备份 (7) Oracle 建议的策略 (7) 备份管理 (9) 跨平台的传输 (10) 革命还未结束 (11) RMAN 比对用户管理的恢复 (11) 网格集群 (13) 人为错误的挑战 (13) 人为错误纠正—闪回技术 (13) 人为错误的传统恢复 (14) 恢复时间目标 (14) 何时使用闪回与传统恢复的对比 (14) 闪回数据库 (15) 闪回表 (17) 闪回删除 (18) 什么是回收站? (18) 闪回查询 (18) 闪回版本查询 (20) 闪回事务查询 (20) 实例 (21) 结论 (22)

发展和革命 数据库备份可能是防止 Oracle 数据库发生介质故障的唯一方式。使用提供给 DBA 的大量工具和方法来恢复关键数据的重要性是毋庸置疑的。保护 Oracle 数据的成本和复杂性包括,从简单的每周备份到磁带,到记录更加繁复的文件快照或备用数据库。Oracle Data Guard1.的体系结构有助于企业恢复对 Oracle 数据库造成不利影响的灾难、人为错误和损坏。每个工具和选项都有其自己的持续可用性优势,并且可以快速备份和/或恢复 Oracle 数据库。 为了保护和恢复数据所采纳的方法或工具应该具有: 可靠性。所有需要恢复的文件都进行了备份,且通过恢复操作能够方便地恢复文件。 灵活性。Oracle 数据库可以在数据库、表空间、数据文件和块级上备份或恢复。 可管理性组织和管理备份文件以便用于恢复操作。 可用性。备份操作不应该干扰数据库事务处理过程同时恢复操作应该快速、有效。 Oracle 恢复管理器通过新的版本和 Oracle 数据库 10g 包含的革命性技 术进步继续得以完善,并提供您一直期待的简单、可靠和自动的恢复工具。此白皮书列出了 Oracle 数据库 10g 用于备份和恢复文件管理的新功能,增强的增量备份和异构平台上相同表空间数据的共享。让革命开始吧! 恢复管理器 恢复管理器 (RMAN) 是管理备份和更重要的数据库恢复的 Oracle 公用程序。提供数据库高级的性能和可用性的同时消除了操作的复杂性。从 Oracle8 开始,恢复管理器为 DBA 提供了集成的备份和恢复解决方案。 1有关 Data Guard 的详细信息,请访问 https://www.doczj.com/doc/9e8925949.html,/deploy/availability/htdocs/odg_overview.html。

Oracle闪回特性

在Oracle的操作工程中,会不可避免地出现操作失误或者用户失误,例如不小心删除了一个表等,这些失误和错误可能会造成重要数据的丢失,最终导致Oracle数据库停止。 闪回的基本概念 在Oracle的操作工程中,会不可避免地出现操作失误或者用户失误,例如不小心删除了一个表等,这些失误和错误可能会造成重要数据的丢失,最终导致Oracle数据库停止。在传统意义上,当发生数据丢失、数据错误问题时,解决的主要办法是数据的导入导出、备份恢复技术,这些方法都需要在发生错误前,有一个正确的备份才能进行恢复。为了减少这方面的损失,Oracle提供了闪回技术。有了闪回技术,就可以实现数据的快速恢复,而且不需要数据备份。闪回的类型: 闪回表(flashback table) :恢复到过去的一个是时间点 闪回删除(flashback drop) :回收站中将已删除的对象恢复到删除之前的状态 闪回版本查询(flashback version query) :查看用户提交了的增删改的操作以及相应操作时间的记录 闪回事务查询(flashback transaction query) :查询某个事务甚至撤销一个已经 提交的事务 闪回的益处 恢复中,闪回技术是革命性的进步 传统的恢复技术缓慢: ?它是整个数据库或者一个文件恢复,不只恢复损坏的数据 ?在数据库日志中每个修改都必须被检查 闪回速度快: ?通过行和事务把改变编入索引 ?仅仅改变了的数据会被恢复 闪回命令很容易: ?没有复杂棘手的多步程序 闪回表 闪回表,实际上是将表中的数据快速恢复到过去的一个是时间点或者系统改变号SCN 上。实现表的闪回,需要使用到与撤销表空间相关的undo信息,通过show parameter undo 命令可以了解这些信息。 用户对表数据的修改操作,都记录在撤销表空间中,这为表的闪回提供了数据恢复的基础。例如,某个修改操作在提交后被记录在撤销表空间中,保留时间为900秒,用户可以 在这900秒的时间内对表进行闪回操作,从而将表中的数据恢复到修改之前的状态。 闪回表的步骤: 1.执行表的闪回要设置用户权限:grant flashback any table to scott; 2. 获取要恢复的点(SCN号): select sysdate 时间, timestamp_to_scn(sysdate) SCN from dual; 3. 将表的行移动功能打开:alter table flshback_table enable row movement; 4. 执行闪回表:flashback table flashback_table to scn 945018(获取到的scn号,也可指定在某个时间段恢复); 闪回删除 闪回删除,实际上从系统的回收站中将已删除的对象,恢复到删除之前的状态。系统的回收站只对普通用户有作用。回收站是所有被删除对象及其相依对象的逻辑存储容器,例如当一个表被删除(drop)时,该表及其相依对象并不会马上被数据库彻底删除,而是被保

Oracle的闪回特性

Oracle的闪回特性 在Oracle 9i之前的版本中,如果用户因为误操作delete或update了数据并最终提交,为了恢复这些用户错误,我们必须通过逻辑备份或者物理备份进行恢复来纠正这些错误,这种方法是极其复杂和低效的。 为了提高数据库的可用性,简化用户的数据恢复,从Oracle 9i开始,Oracle将闪回flashback引入到数据库中,闪回功能类似播放机中的回退功能,通过回退,我们可以找会正确的数据,纠正犯下的错误。 从Oracle 9i到Oracle 10g以及Oracle 11g,Oracle在不停地增加和强化闪回功能,在这一章中,我们将全面介绍Oracle的闪回特性。 1.Oracle 9i的闪回查询特性 从Oracle 9i开始Oracle 引入了闪回查询(Flashback Query)的特性,通过闪回查询我们可以按照时间戳或SCN来向前查询,获取修改之前的数据镜像,再通过insert等操作就可以恢复数据。 闪回查询依赖于回滚段中存储的数据前镜像,在Oracle 9i以前的版本中,通常只要事务提交后,前镜像数据就可以被覆盖,空间可以重用;在Oracle 9i中Oracle引入了自动回滚段管理(Automatic Undo Management,简称AUM)的新特性,在AUM模式下,我们可以通过调整undo_retention参数来设置数据库UNDO信息的保留时间,只要前镜像没有被覆盖,那么闪回就是可能的,但是需要注意的是,UNDO信息的保留还同UNDO表空间中的空间有关,如果空间紧张,为了满足事务的需要,非会动的前镜像信息是可以被覆盖的。 可以使用select 语句的as of子句来进行闪回查询,具体语法如下: As of scn/timestamp expr 通过关键词as of 可以对表、视图、物化视图进行Flashback Query,可以指定SCN或者timestamp,其中timestamp是9i中引入的新的数据类型,精确到毫秒的时间单位。 2.闪回查询的使用 以下通过一个示例来说明如何使用Oracle 的这个新特性。 首先记录一下当前的时间戳,然后删除测试表中的两条数据并提交: SQL> create table test as select * from dba_users; 表已创建。 SQL> select count(*) from dba_users; COUNT(*) ---------- 8 SQL> select systimestamp from dual; SYSTIMESTAMP ---------------------------------------------------------------------------

Oracle 11g数据库管理及其开发技术(doc 8页)

Oracle 11g数据库管理及其开发技术(doc 8页)

课程摘要:本课程主要介绍Oracle数据库的基本概念、安装方法及数据库的启动与关闭、与数据库设计、开发和管理密切相关的SQL语言,以及Oracle对SQL语言应用进行增强的PLSQL语言和SQL*Plus管理工具,并结合大量的实例帮助学员学习Oracle数据库系统的相关知识;数据库的备份与恢复技术,包括基础知识、RMAN工具、闪回、OEN 及逻辑备份工具(数据泵技术)、数据库优化、SQL优化和系统调整方面的知识;

内容大纲: 数据库的基础知识 数据库的产生、数据库的特征 数据库的组成、数据库的管理系统、关系数据库 初识Oracle Oracle 数据库系统的特点、发展历史 Oracle 版本号的含义、Oracle 11g 的新特性 Oracle 11g 数据库安装/启动/关闭 Oracle 11g 在Windows 下的安装概述 在Windows 环境下安装Oracle 11g 在Linux 环境下安装前的准备、在Linux 环境下安装Oracle 11g Oracle 11g 数据库实例的创建 在Windows 环境下创建数据库 在Linux 环境下用DBCA 创建数据库 Oracle 11g 实例启动与关闭 Linux 环境下Oracle 实例的关闭、Linux 环境下Oracle 监听进程的启动和关闭 SQL 语言概述 使用SQL*Plus 用SQL*Plus 与数据库交互 SQL*Plus 的主要功能、启动SQL*Plus 连接数据库 1. 管理表 建表时的考量、列数据类型、创建表的语法、创建表的实例、查看表的信息 、修改表结构、重命名表、监控表的存储空间、修改表空间的存储设置、删除表、外部表的管理

ORACLE 11g 技术白皮书

ORACLE 11g 技术白皮书 1概要 过去30年来。信息技术成熟到全球经济几乎全都仰赖电子撷取、分析与分享信息的地步。 各企业持续扩大自己的信息基础架构,想要满足以更短时间存取信息而且不断成长的业务需求。然而,企图勉强结合青黄不接的技术与流程,导致各企业信息技术(IT)基础架构普遍的严重复杂性与效率不彰。由于日常作业完全仰赖信息技术基础架构,这种复杂性威胁到了企业快速应变的能力。 Oracle Database 11g提供绝佳创新,使各企业能够更快速应变。高成本的负担与瞬息万变的业务需求息息相关,各企业可以仰赖Oracle Database 11g帮助创新,以妥善掌控、具备成本效益的方式执行IT变革。 Oracle Database 11g解决阻碍各IT组织进步的核心问题:自信满怀地执行变革的能力。运用Oracle Database 11g,各企业可以统合所有信息,而简化自己的信息基层架构。Oracle Database 11g也不断地为更高价值的规划工作而释出宝贵的技术资源,使管理工作自动化进而建置崭新的业务流程。 Oracle Database 11g彻底改变了具有前瞻视野的公司对于数据库平台的需求。由于Oracle Database 11g与企业级网格运算,各企业现在可以毫无羁绊地追求创新。 2增益网格实力 Oracle倡导企业网格(enterprise grids),挑战建置和维护企业IT基础架构的高昂成本。企业网格运用Oracle Database 11g以及商用服务器和存储,让各企业能够简化自己的基础架构,进而顺应变革,而非管理昂贵的垂直扩展服务器孤岛;Oracle企业网格以最低成本独家提供效能、可用性与基础架构灵活性的绝妙组合。 Oracle企业网格包括Oracle Fusion Middleware可以扩展应用软件、Oracle Real Application Clusters (Oracle R AC)以提供扩展性和高可用性,还有Automatic Storage Management (ASM)以简化管理基本存储基础架构的工作,并使其自动化。Enterprise Manager Grid Control简化企业网格和一体化业务流程的管理,以确保快速、安全而且可靠的服务品质。 网格运算

ORACLE数据库日常维护手册(最全+最实用)

ORACLE 日常维护手册 查看数据库版本 SELECT*FROM V$VERSION; 查看数据库语言环境 SELECT USERENV('LANGUAGE')FROM DUAL; 查看ORACLE实例状态 SELECT INSTANCE_NAME,HOST_NAME,STARTUP_TIME,STATUS,DATABASE_STATUS FROM V$INSTANCE; 查看ORACLE监听状态 lsnrctl status 查看数据库归档模式 SELECT NAME,LOG_MODE,OPEN_MODE FROM V$DATABASE; 查看回收站中对象 SELECT OBJECT_NAME,ORIGINAL_NAME,TYPE FROM RECYCLEBIN; 清空回收站中对象 PURGE RECYCLEBIN; 还原回收站中的对象 FLASHBACK TABLE"BIN$GOZUQZ6GS222JZDCCTFLHQ==$0" TO BEFORE DROP RENAME TO TEST;

闪回误删除的表 FLASHBACK TABLE AAA TO BEFORE DROP; 闪回表中记录到某一时间点 ALTER TABLE TEST ENABLE ROW MOVEMENT; FLASHBACK TABLE TEST TO TIMESTAMP TO_TIMESTAMP('2009-10-15 21:17:47','YYYY-MM-DD HH24:MI:SS'); 查看当前会话 SELECT SID,SERIAL#,USERNAME,PROGRAM,MACHINE,STATUS FROM V$SESSION; 查看DDL锁 SELECT* FROM DBA_DDL_LOCKS WHERE OWNER ='FWYANG'; 检查等待事件 SELECT SID, https://www.doczj.com/doc/9e8925949.html,ERNAME, EVENT, WAIT_CLASS, T1.SQL_TEXT FROM V$SESSION A, V$SQLAREA T1 WHERE WAIT_CLASS <>'Idle' AND A.SQL_ID = T1.SQL_ID; 检查数据文件状态 SELECT FILE_NAME,STATUS FROM DBA_DATA_FILES; 检查表空间使用情况 SELECT UPPER(F.TABLESPACE_NAME) "表空间名", D.TOT_GROOTTE_MB "表空间大小(M)", D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空间(M)", TO_CHAR(ROUND((D.TOT_GROOTTE_MB -F.TOTAL_BYTES)/D.TOT_GROOTTE_MB *100, 2), '990.99') "使用比", F.TOTAL_BYTES "空闲空间(M)",

oracle闪回技术

亚存整理 闪回作用 自动的基于磁盘的备份与恢复,能把表恢复到过去的某个时间点 查看闪回区 Show parameter db_recovery_file_dest 查看闪回区详细信息 Select flashback_on from v$database 查看闪回区是否开启 2,修改闪回功能 SQL> startup mount 数据库启动到mount下 SQL> alter database flashback on (off); 开启关闭闪回区 注:如遇到38706事件错误,可能是因为归档不正确。先启用归档 SQL>alter database archivelog SQL> alter system set db_flashback_retention_target=2880 修改闪回时间,默认是1440 闪回时间是指数据库能回退的时间 闪回使用实例:(注:sys用户下不可用闪回) 1,闪回drop的表 在非sys用户下创建表和表上索引,插入相关数据 create table abc (f number(9)); create index idx_test on abc(f); insert into abc values(1); insert into abc values(2); insert into abc values(3); 删除表 drop table abc; 删除表之后,表并没有被真正删除,而是重命名之后放在同一用户下的回收站内,同时表上的索引等也会被如此处理。回收站满后以先进先出的原则管理 查看表语句select * from tab; 查看索引语句select index_name, index_type, table_name from ind; 查看回收站语句show recyclebin 清空回收站语句PURGE RECYCLEBIN; 注:没有放入回收站的表不能被闪回 闪回之后,即可再次看到表 flashback table abc to before drop; 但是表闪回后相应的索引等需要重新编译 2,闪回DML语句 Flashback table abc to timestamp to_timestamp(‘2014-02-14 16:00:00’,’yyyy-mm-dd hh24:mi:ss’) 闪回可能会遇到08189错误,执行下列语句

oracle闪回

闪回基本参数 企业版才支持数据闪回 打开重置日志ALTER DATABASE OPEN RESETLOGS 必须在归档模式archive log list; 开启mount状态startup mount exclusive; 查看闪回参数show parameter db_recovery show parameter flashback 设置闪回空间alter system set db_recovery_file_dest='/u01/app/oracle/flashback_area' scope=spfile; 设置闪回区大小alter system set db_recovery_file_dest_size=20g scope=spfile; 设置保留时间 alter system set db_flashback_retention_target=4320; 开启闪回alter database flashback on; 查看闪回开启select flashback_on from v$database; 具体闪回待添加----搭建rac之后 创建可靠还原点 sys@WZXIS>create restore point b1 guarantee flashback database;

闪回表 scott@DJJXIS>drop table emp; Table dropped. scott@DJJXIS>select * from tab; TNAME TABTYPE CLUSTERID ------------------------------ ------- ---------- BIN$R+Kc8tW4kBTgVQAAAAAAAQ==$0 TABLE BONUS TABLE DEPT TABLE SALGRADE TABLE 查看回收站 scott@DJJXIS>show recyclebin; ORIGINAL NAME RECYCLEBIN NAME OBJECT TYPE DROP TIME ---------------- ------------------------------ ------------ -------- EMP BIN$R+Kc8tW4kBTgVQAAAAAAAQ==$0 TABLE 2017-02-07:03:31:11 scott@DJJXIS>flashback table emp to before drop; Flashback complete. 彻底删除表:purge选项 scott@DJJXIS>drop table T purge; Table dropped. scott@DJJXIS>select * from tab; TNAME TABTYPE CLUSTERID ------------------------------ ------- ---------- BIN$R+Kc8tW4kBTgVQAAAAAAAQ==$0 TABLE BONUS TABLE DEPT TABLE SALGRADE TABLE 闪回查询 这个可能用EM来做更加方便

oracle数据库闪回目录空间不足导致drop user cascade报错

闪回目录空间不足导致drop user cascade报错 imp数据的过程中出错,所有drop user gspx cascade,但一直无法执行完毕,无奈的关闭终端,重新连接数据库后, 再次执行drop user gspx cascade ,这次报错如下: 第1 行出现错误: ORA-01940: cannot drop a user that is currently connected 从v$session中查看,没有与gspx用户相关的session conn gspx/gspx 又报错如下: 普通连接报错: ORA-00257: archiver error. Connect internal only,until freed 系统不能进行归档: SQL> select * from v$log; GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARC STATUS ---------- ---------- ---------- ---------- ---------- --- ---------------- FIRST_CHANGE# FIRST_TIME ------------- --------------- 1 1 10 52428800 1 NO INACTIVE 15711794 31-MAY-07 2 1 11 52428800 1 NO CURRENT 15730194 31-MAY-07 3 1 9 52428800 1 NO INACTIVE ARC字段的值都是NO,表明数据库无法自动归档。 检查归档空间使用情况: SQL> select * from v$flash_recovery_area_usage; FILE_TYPE PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE NUMBER_OF_FILES ------------ ------------------ ------------------------- --------------- CONTROLFILE 0 0 0 ONLINELOG 0 0 0 ARCHIVELOG 99.99 0 527 BACKUPPIECE 0 0 0 IMAGECOPY 0 0 0 FLASHBACKLOG 0 查看闪回目录的路径以及空间配额 SQL> show parameter db_recovery_file_dest NAME TYPE V ALUE ------------------------------------ ----------- ------------------------------ db_recovery_file_dest string /opt/oracle/flash_recovery_are a db_recovery_file_dest_size big integer 2G

Oracle Flashback 技术 总结

Oracle Flashback 技术总结 Flashback 技术是以Undo segment中的内容为基础的,因此受限于UNDO_RETENTON参数。要使用flashback 的特性,必须启用自动撤销管理表空间。 在Oracle 10g中,Flash back家族分为以下成员:Flashback Database,Flashback Drop,Flashback Query(分Flashback Query,Flashback V ersion Query,Flashback Transaction Query 三种) 和Flashback Table。 一.Flashback Database Flashback Database 功能非常类似与RMAN的不完全恢复,它可以把整个数据库回退到过去的某个时点的状态,这个功能依赖于Flashback log 日志。比RMAN更快速和高效。因此Flashback Database 可以看作是不完全恢复的替代技术。但它也有某些限制: 1. Flashback Database 不能解决Media Failure,这种错误RMAN恢复仍是唯一选择 2. 如果删除了数据文件或者利用Shrink技术缩小数据文件大小,这时不能用Flashback Database技术回退到改变之前的状态,这时候就必须先利用RMAN把删除之前或者缩小之前的文件备份restore 出来,然后利用Flashback Database 执行剩下的Flashback Datbase。 3. 如果控制文件是从备份中恢复出来的,或者是重建的控制文件,也不能使用Flashback Database。 4. 使用Flashback Database锁能恢复到的最早的SCN,取决与Flashback Log中记录的最早SCN。 Flashback Database 架构 Flashback Database 整个架构包括一个进程Recover Writer(RVWR)后台进程,Flashback Database Log日志和Flash Recovery Area。一旦数据库启用了Flashback Database,则RVWR 进程会启动,该进程会向Flash Recovery Area中写入Flashback Database Log,这些日志包括的是数据块的" 前镜像(before image)",这也是Flashback Database 技术不完全恢复块的原因。

数据库闪回相关语句

北京甲骨文(盈佳科技)学习中心将详细介绍oracle 数据库闪回相关语句,需要了解跟多的同学可以参考下 1\将表闪回到某一时间点: 闪回操作前启用行移动功能 Sql代码 alter table emp enable row movement; 执行闪回语句: Sql代码 flashback table emp to timestamp to_timestamp('20120709195000','YYYYMMDDHH24:MI:SS'); 2\闪回回收站: Java代码 SQL>show recyclebin; SQL>drop table emp; SQL>show recyclebin; ORIGINAL NAME RECYCLEBIN NAME OBJECT TYPE DROP TIME EMP BIN$b+XkkO1RS5K10uKo9BfmuA==$0 TABLE 2012-11-07:15:30:47 SQL>flashback table emp to before drop;或 SQL>flashback table "BIN$b+XkkO1RS5K10uKo9BfmuA==$0" to before drop;

清理回收站: 清除回收站中的单个表:purge table emp 清除整个回收站:purge recyclebin 清除不同的对象回收站:purge user_recyclebin或purge dba_recyclebin 彻底删除一个table: SQL>drop table emp purge; --表不能被恢复了。 3\闪回事物查询: Sql代码 select * from flashback_transaction_query where TABLE_NAME= 'EMP' 盈佳科技有限公司是甲骨文Oracle公司在北京指定授权IT学习中心,坐落于海淀区北四环中路。主要从事Oracle Java软件开发实训和学员的就业安排。Oracle Java软件开发实训课程摆脱了传统单一编程训练的知识结构,整个实训体系分为技术层面、理论层面、软件项目管理层面及团队合作层面。学员不仅能够学习到实用的技术,更可以在多方面得到综合训练,从而培养出适合企业需要的高素质人才。详情请访问:甲骨文官网网址:https://www.doczj.com/doc/9e8925949.html,

[Oracle 10g] 闪回恢复区 (Flash Recovery Area)

[O RACLE 10G]闪回恢复区(F LASH R ECOVERY A REA) 何为闪回恢复区 Oracle 10g 有一项新功能称为:自动的基于磁盘的备份与恢复( Automatic Disk-Based Backup and Recovery )。实现该功能的基础为本文要讲述的闪回恢复区( Flash Recovery Area )。闪回恢复区是Oracle 10g 中的新事物。简单的说,闪回恢复区是一块用以存储恢复相关的文件的存储空间。允许用户集中存储所有恢复相关的文件。 闪回恢复区可以放在如下几种存储形式上: ?目录 ?一个文件系统 ?自动存储管理(ASM)磁盘组 在RAC 环境中,这个该位置必须为集群文件系统(cluster file system) 或是ASM 磁盘组亦或是通过NFS 控制的文件共享目录,还要注意的是,所有实例的位置和操作系统的磁盘限额(disk quota) 必须一致。 如下几种文件可以放到闪回恢复区中: ?控制文件 ?归档的日志文件(注:Oracle 手册上所说的在设定flash recovery area之后, LOG_ARCHIVE_DEST_10的值将自动设定为flash recovery area的位置,这个变化在笔者测试过程中观察不到) ?闪回日志 ?控制文件和SPFILE 自动备份 ?RMAN 备份集 ?数据文件拷贝 为何要用闪回恢复区? 如前所述,闪回恢复区提供了一个集中化的存储区域,很大程度上减小了管理开销。这是其最主要的优点。与RMAN 结合使用可以进行快速恢复。 近年来随着存储技术的发展,单个磁盘的存储能力已经加强。这使自动的基于磁盘的备份与恢复的技术实现成为可能。而闪回恢复区恰是基于磁盘的备份与恢复的基础。把闪回恢复区和OMF 与ASM 结合运用看起来是比较完美的方案。当然,不可否认的是,自动备份恢复技术还远远不够成熟。 设定闪回恢复区 如果您使用DBCA创建的数据库,在安装时可以设定闪回恢复区的位置以及大小(点击这里查看安装截图)--这也是Oracle 10g OUI 的新功能之一。如果在开始的时候没有启用闪回恢复区,可以通过如下方式设定。 调整如下两个动态初始化参数(无需重新启动实例): SQL> ALTER SYSTEM SET db_recovery_file_dest_size=2g SCOPE=BOTH;

oracle数据备份与还原

在Oracle11g及以上版本中建议使用数据泵来代替EXP和IMP实用程序,数据泵技术提供了许多新的特性,可以中断导出\导入作业然后恢复作业的执行,从一个会话中监控数据泵取作业,在作业执行过程中修改作业属性,以及重启一个失败的数据泵取作业等。 ?数据泵导入导出技术的结构 当启动数据泵导入或导出程序时,在数据库服务器端启动相应的服务器进程,完成数据的导入及导出任务,所以我们也称数据泵技术是基于Oracle数据库服务器的,导入及导出的数据文件也保存在数据库服务器端。 数据泵取即EXPDP程序启动数据库服务器端的服务器进程,服务器进程完成数据的备份并将备份文件写入数据库服务器端的 计算机磁盘空间,文件格式filename.dat。导出的备份文件在导 入时只能通过数据泵的导入实用程序IMPDP完成,将数据导入到运行在其他平台上的数据库中。 ?数据泵导入导出与EXP/IMP技术的区别 ?Oracle数据泵技术是对传统的EXP和IMP实用程序扩展,使得在数据库服务器端快速的移动数据。这里我们给出二者的主要区别,使得读者在使用时根据需要有所取舍。 ?数据泵技术比传统的EXP/IMP技术更快速的移动大量数据,因为数据泵技术采用并行流技术实现快速的并行处理。

?数据泵技术基于数据库服务器,在启动数据泵导入导出实用程序时在数据库服务器端产生服务器进程负责备份或导入数据,并且将备份的数据备份在数据库 服务器端。而且服务器进程与EXPDP客户机建立的会话无关。 ?传统的EXP/IMP是类似于普通的用户进程,执行象SELECT、INSERT、CREATE等的SQL语句。而数据泵技术类似于启动作业的控制进程,不但启动 客户端进程建立会话,还控制整个导入或导出过程,如重启作业。 ?使用传统的EXP/IMP实用程序导出的数据格式与数据泵技术导出的数据格式不兼容。 ?数据泵技术与传统的导入导出实用程序不同,它使用目录和目录对象存储数据泵导出文件,使用数据泵导出数据前必须先创建目录对象,否则无法使用数据 泵导入和导出作业。 数据泵技术比传统的导入导出程序具有更多的优点, ?数据泵导入导出技术的优点 ?导入导出速度更快:因为在数据泵导入导出作业中可以启动多个线程,所以可以并行的实现作业,对于移动大数据量,性能显著提高。 ?重启失败的作业:这个功能是传统的EXP/IMP程序无法实现的,不论是数据泵导入导出作业停止还是失败,都可以很容易的重启作业。同时也支持手动停止 或重启作业。 ?实时交互能力:在一个运行的数据泵作业中,可以从其他屏幕或控制终端与当前数据泵作业交互,以监控作业的执行以及更改作业的某些参数。 ?独立于客户机:因为数据泵技术是基于数据库服务器的,它是数据库服务器的一部分,一旦启动数据泵作业,则与客户机无关。 ?支持网络操作:支持在两个联网的数据库服务器之间导入和导出数据文件,也支持直接的将数据从一个数据库导入另一个数据库,而不需要备份文件。网络 操作的方式基于数据库连接,在数据库间直接移动数据的方法不需要磁盘存储。 导入功能更加细粒度:在数据泵技术中,使用INCLUDE和EXCLUDE参数使得数据泵 实用程序可以导入或导出更加细粒度的对象,如可以选择只导出过程或函数等。

Oracle 10g 数据库闪回的配置与使用详解

执行以下的SQL语句: 1.sqlplus sys/passwd@tns_name as sysdba 2. 3.sql>shutdown immediate ;//关闭数据库 4. 5.sql>startup mount;//启动数据库控制文件,让实例与数据库关连,还有两种unmount启动数据库实例,open控制文件找到并打开数据文件与日志文件,启动数据库 6. 7.sql>alter database archivelog;//启动归档 8. 9.sql>alter datbase flashback on; 10. 11.sql>select flashback_on from v$database;//查看启动结果,如果flashback_on的值为on,说明启动成功 12. 13.sql>show parameter recyclebin;//如果要使用表的闪回,recyclebin(回收站)就得打开 这样Oracle 10g数据库的闪回就配置好了。 如果要使用数据库闪回,则需要执行以下的代码: 1.sqlplus sys/passwd@tns_name as sysdba 2. 3.sql>shutdown immediate ;//关闭数据库 4. 5.sql>startup mount;//启动数据库控制文件,让实例与数据库关连,还有两种unmount启动数据库实例,open控制文件找到并打开数据文件与日志文件,启动数据库 6. 7.sql>flashback database to timestamp to_timestamp('2011-08-08 09-14-01','yyyy-mm-dd hh24:mi:ss'');//闪回数据库 8. 9.sql>alter database open resetlogs;//必须在open后面加入resetlogs或者noresetlogs不然会报出ora-01589错误 如果要闪回表,代码如下: 1.flashback table table_name to timestamp to_timestamp('2011-08-08 09-14-01','yyyy-mm-dd hh24:mi:ss''); 表删除以后的闪回: 1.flashback table table_name to before drop; 如果这时出现ora-38305错误。就先执行: 1.alter table table_name enable row movement; 来源:网络编辑:联动北方技术论坛

相关主题
文本预览
相关文档 最新文档