配置闪回数据归档
准备一个Oracle 11g数据库使用FBDA功能是相当简单的,只需要经过几个简单的步骤即可:
(1)创建或指定一个或多个表空间用于FBDA保留历史数据
(2)随意指派一个FBDA作为数据库的默认FBDA
(3)指派一个用户账户作为FBDA管理员,授予它FLASHBACK ARCHIVE ADMINISTER系统权限
(4)授予FBDA权限给适合的用户账号
(5)授予FLASHBACK和SELECT权限给合适的FBDA表用户
(6)为FBDA用户授予DBMS_FLASHBACK存储过程EXECUTE权限
下面是具体的实现命令:
— 创建FBDA管理员用户账号 DROP USER fbda_admin CASCADE; CREATE USER fbda_admin IDENTIFIED BY fbda_admin; GRANT FLASHBACK ARCHIVE ADMINISTER TO fbda_admin; — 授予其它用户合适的闪回权限 GRANT FLASHBACK ANY TABLE TO hr; GRANT EXECUTE ON DBMS_FLASHBACK TO hr; GRANT FLASHBACK ANY TABLE TO oe; GRANT EXECUTE ON DBMS_FLASHBACK TO oe; GRANT FLASHBACK ANY TABLE TO sh; GRANT EXECUTE ON DBMS_FLASHBACK TO sh; — 为闪回数据归档创建表空间 DROP TABLESPACE fbda INCLUDING CONTENTS AND DATAFILES; CREATE TABLESPACE fbda DATAFILE ‘/u01/app/oracle/oradata/ORCL/tsp_fdba01.dbf’ SIZE 24M; — 创建一个闪回数据归档保留5天有价值的历史 DROP FLASHBACK ARCHIVE fbda_1; CREATE FLASHBACK ARCHIVE fbda_1 TABLESPACE fbda QUOTA 1M RETENTION 5 DAY; GRANT FLASHBACK ARCHIVE ON fbda_1 TO hr; GRANT FLASHBACK ARCHIVE ON fbda_1 TO oe; GRANT FLASHBACK ARCHIVE ON fbda_1 TO sh; — 创建一个闪回数据归档保留1整年有价值的历史 DROP FLASHBACK ARCHIVE fbda_2; CREATE FLASHBACK ARCHIVE fbda_2 TABLESPACE fbda QUOTA 4M RETENTION 1 YEAR; GRANT FLASHBACK ARCHIVE ON fbda_2 TO hr; GRANT FLASHBACK ARCHIVE ON fbda_2 TO oe; GRANT FLASHBACK ARCHIVE ON fbda_2 TO sh; — 创建一个闪回数据归档保留7年有价值的历史 DROP FLASHBACK ARCHIVE fbda_3; CREATE FLASHBACK ARCHIVE fbda_3 TABLESPACE fbda QUOTA 20M RETENTION 7 YEAR; GRANT FLASHBACK ARCHIVE ON fbda_3 TO hr; GRANT FLASHBACK ARCHIVE ON fbda_3 TO oe; GRANT FLASHBACK ARCHIVE ON fbda_3 TO sh; |
从上面的代码可以看出,其实使用闪回数据归档真的很简单,按照上面的代码,我创建一个表空间FBDA,并在它里面创建了三个闪回数据归档:FBDA_A,FBDA_2和FBDA_3,分别保留5天,1年,7年,我还创建了一个新用户账号FBDA_ADMIN,并授予它FLASHBACK ARCHIVE ADMINISTER权限,最后,我们给系统中“sample”方案中的HR,OE和SH用户账号授予了合适的系统权限,以便它们也可以参与FBDA操作。
启用和禁用一个表的历史保留能力:使用ALTER TABLE <表名> FLASHBACK ARCHIVE [FBDA名];命令在现有表上启用FBDA。
如果没有指定FBDA名,将会使用默认的FBDA
DBA也可以给表指定想要的FBDA
如果不存在默认的FBDA就必须要明确指定FBDA
同样,使用ALTER TABLE NO FLASHBACK ARCHIVE; 命令可以在现有表上禁用FBDA。请看下面的代码:
— 将闪回数据归档FBDA_2作为默认FBDA ALTER FLASHBACK ARCHIVE fbda_2 SET DEFAULT; – 将FBDA_1改为默认的FBDA,注意FBDA_1和FBDA_2只会简单地交换名称 ALTER FLASHBACK ARCHIVE fbda_1 SET DEFAULT; – 启用一个现有表使用默认的FBDA(fbda_1) ALTER TABLE hr.applicants FLASHBACK ARCHIVE; – 启用表使用指定的FBDA ALTER TABLE hr.departments FLASHBACK ARCHIVE fbda_1; ALTER TABLE hr.job_history FLASHBACK ARCHIVE fbda_2; ALTER TABLE oe.customers FLASHBACK ARCHIVE fbda_3; – 在指定表上禁用闪回数据归档 ALTER TABLE hr.departments NO FLASHBACK ARCHIVE; |
上面的代码说明了以下基本原理:
可以事后修改默认的FBDA。最初我使用FBDA_2作为默认FBDA,后来我使用ALTER FLASHBACK ARCHIVE SET DEFAULT; 命令将默认FBDA改为FBDA_1了。
接下来,我在表HR.APPLICANTS上使用默认FBDA开启了闪回数据归档跟踪
然后,我对HR.DEPARTMENTS,HR.JOB_HISTORY和OE.CUSTOMERS表开启了闪回数据归档跟踪,为它们的历史数据选择了不同的FBDA。
最后,为了显示如何在表上中断FBDA跟踪,我再次在OE.CUSTOMERS 表上使用了ALTER TABLE NO FLASHBACK ARCHIVE命令。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号

TechTarget
官方微博

TechTarget中国
翻译
相关推荐
-
控制合约 不再畏惧Oracle
许多公司都与Oracle有无限制授权协议,他们害怕离开这个协议,所以就证明他们在使用Oracle的软件,即使因为需求单独购买部分授权许可也可能总体是省钱的。
-
如何应对Oracle EBS实施中的六个挑战?
在18个月的时间里,Vitamix启动运行了Oracle电子商务套件(E-Business Suite,EBS),而且Vitamix还对诸如Oracle ATG Web Commerce等所有页面属性进行了重新整理,并实现了全球数据中心。
-
DBA支招:如何实现Oracle EBS 12.2.5升级
那些对于是否要将EBS进行升级持观望态度的Oracle数据库管理员们可以从一家研究公司获得一些启示。
-
Oracle的云产品“砸了自己脚”?
Sparc和Solaris都是Oracle云计划的一部分,但是硬件和支持人员的减少意味着本地Solaris和Sparc将变得更加稀少。