oracle 11g 新特性-阿里云开发者社区

开发者社区> 数据库> 正文
登录阅读全文

oracle 11g 新特性

简介:

1.Exadata是结合了数据库威力的硬件。

闪存:不同于数据库闪存,这是一个基于文件扩展的常驻SGA缓冲区的高速缓存(类似于交换区),为数据库提供二级缓存。当数据库被换出SGA时该文件被使用。


存储索引:利用最小值/最大值使查询运行得更快。主要维护数据的摘要信息。内存结构驻留在存储单元层面上。对于一个存储单元而言,存储索引最多可以存储8个查询表列的最小值/最大值.存储索引指示数据如何存储在存储单元上(就像分区的最小值/最大值)。


2.高级压缩

允许数据在更新和插入表时保持压缩

create table emp_1

(

EMPNO NUMBER(4),

SAL NUMBER(7,2)

)COMPRESS FOR OLTP;



NOCOMPRESS:表或分区不会被压缩,这是默认动作。

COMPRESS FOR ALL OPERATIONS:适合OLTP系统。所有操作,包括常规的DML语句都启用压缩。

COMPRESS FOR OLTP:适合OLTP系统.所有操作,包括常规的DML语句都启用压缩.



3.自动诊断信息库 ADR

它提供了一个统一而且一致的机制来存储,格式化并定位所有的数据库诊断信息(易于使用的文件结构)。如果想让清理文件的过程自动进行,就必须使用自定义过程去手动清理。用ADR和ADR的命令行界面(ADRCI)。您可以设置控制这些文件保存时间的策略:

adrci> set control (SHORTP_POLICY = 360)

adrci> set control (LONGP_POLICY = 4380)


使用ADR时,位置变为参数DIAGNOSTIC_DEST指定。如果环境变量中设置了ORACLE_BASE,那么DIAGNOSTIC_DEST就会被设置为$ORACLE_BASE



4.自动共享内存管理ASMM的改进

为了使用自动内存管理(ASMM)来管理SGA和PGA,oracle公司推出了两个新的数据库参数:MEMORY_TARGET 和 MEMORY_MAX_TARGET.


linux Huge Pages 和 MEMORY_TARGET参数是不兼容的

MEMORY_TARGET的值要小于操作系统共享内存文件系统/dev/shm,数据库启动时,/dev/shm的空闲空间必须大于MEMORY_TARGET的设置。

如果LOCK_SGA数据库初始化参数设置true,您就不能使用参数MEMORY_TARGET来启用自动内存管理.


5.ASM的改进

1.oracle11g中ASM的改进包括减少了数据库的启动时间和内存要求,允许支持更大ASM的文件和提 供了在ASM上实现几百TB级或PB级数据库的能力。

2.从ASM首选镜像读取

假设有两个站点分别叫做site1和site2,ASM磁盘组DATA1有两个FailGroup分别命名为SITE1和SITE2

对于site1:

ASM_PREFERRED_READ_FAILURE_GROUP=DATA1.SITE1

对于site2:

ASM_PREFERRED_READ_FAILURE_GROUP=DATA1.SITE2


3.滚动升级/打补丁

滚动迁移模式允许ASM实例暂时在多版本的ASM环境下工作.

开始滚动升级:

alter system start rolling migration to <ver_number>;

如果在滚动升级中遇到问题,就停止升级或降级:

alter system stop rolling migration;


4.更快的重新平衡

DISK_REPAIR_TIME属性允许定义一个时间窗口,在该时间窗内可以进行故障维修或同步的操作,镜像磁盘也可以再该时间窗内重新上线。DISK_REPAIR_TIME默认是3.6小时,但是alter diskgroup修改

alter diskgroup <Diskgroupname> set ATTRIBUTE 'DISK_REPAIR_TIME' = '24H';

可以通过命令重新联机全部磁盘组(可以把ALL替换成DISK<diskname>来针对单独的磁盘组),并开始重新同步的过程:

alter diskgroup disk online all;

oracle11g允许磁盘组被挂载在限制模式下,从而消除多个ASM实例之间在重新平衡操作时所需要的锁定和解锁消息。

alter diskgroup <diskgroup> dismount;

alter diskgroup <diskgroup> mount restricted;

执行维护活动(重新平衡/添加/删除/联机/脱机磁盘等)

alter diskgroup <diskgroup> dismount;

alter diskgroup <diskgroup> mount;

5.ASM磁盘组兼容性

新属性compatible.asm 和 compatible.rdbms在磁盘组级别设置,在有必要降级的时候,它们可能非常有用:

create diskgroup data1 normal redundancy disk '/dev/raw/raw1','/dev/raw/raw2' attribute 'compatible.asm' =  '11.1';

alter diskgroup data1 set attribute 'compatible.rdbms' = '11.1';

select group_number GN,name,compatibility compat,database_compatibility dcompat  from v$asm_diskgroup;


6.ASMCMD命令扩展

cp:在ASM磁盘组和操作系统文件系统之间复制文件

ASMCD>cp +ASM1/system.dbf/backups/orcl/system.dbf

MD_BACKUP:备份磁盘组元数据

ASMCMD> md_backup -b /backups/orcl/asmbackupfile.md -g ASM1

MD_RESTORE>恢复磁盘组元数据

ASMCMD>md_restore -b /backups/orcl/asmbackupfile.md -t full -g ASM1

LSDSK:列出磁盘信息

ASMCMD>lsdsk

REMAP:在指定的那些数据块上进行坏块的重映射

ASMCMD>remap <diskgroup name> <disk name> <block range>


SYSASM privilege:为ASM指定新的角色,比如SYSDBA.

SQL>grant sysasm to <username> ;

SQL>connect <username> as sysasm;

6.自动SQL优化

启用和禁用自动sql优化

exec dbms_auto_task_admin.enable(client_name => 'sql tuning advsor',operation => NULL,window_name => NULL);


exec dbms_auto_task_admin.disable(client_name => 'sql tuning advsor',operation => NULL,window_name => NULL);


配置自动SQL优化

exec dbms_sqltune.set_tuning_task_parameter(task_name => 'SYS_AUTO_SQL_TUNING_TASK',parameter => 'ACCEPT_SQL_PROFILES',value => 'TRUE');


INTERRUPT_TUNING_TASK:中断正在执行的任务,得到中间结果并正常退出

RESUME_TUNING_TASK:恢复先前被中断的任务

CANCEL_TUNING_TASK:取消正在执行的任务,清楚任务的所有结果

RESET_TUNING_TASK:重置正在执行的任务,清除任务的所有结果并返回到其初始状态

DROP_TUNING_TASK:删除一个任务,清除所有与该任务相关的结果.


7.数据卫士(DG)增强

1.快照备用

2.活动DG

3.混合平台支持

oracle11g增加的一个扩展功能是物理备用数据库可以跟主数据库位于不同的操作系统。

4.高级压缩支持逻辑备用数据库11gR2

5.透明数据加密支持逻辑备用数据库

6.增强的数据泵压缩

7.数据泵加密dump文件集

8.数据泵的传统模式

用于兼容原来的导出和导入工具创建的脚本和参数文件


8.增强的统计信息

1.增强了IO统计信息

2.减少收集分区对象的统计信息

3.待定统计信息

这个特性可以使新收集的统计数据保持在挂起状态,直到决定发布他们为止。默认条件下,统计 信息在收集操作完成的时候自动发布。待定统计信息是通过dbms_stats程序包和 optimizer_use_pending_statistic这个数据库初始化参数来控制的.


查看待定统计信息设置:

SQL> select dbms_stats.get_prefs('PUBLISH') PUBLISH FROM DUAL;


设置自动发布全局待定统计信息(默认)

sql>exec dbms_stats.set_clobal_prefs('PUBLISH','TRUE');


设置不自动发布全局待定统计信息:

sql>exec dbms_stats.set_global_prefs('PUBLISH','FALSE');

4.多列统计信息

5.表达式统计信息

9.闪回数据归档FBDA


10.健康监控器

通过DBMS_HM程序包来完成。

DB结构完整性检查

数据块完整性检查

重做日志完整性检查

UNDO段完整性检查

事务完整性检查

数据字典完整性检查



11.事件打包服务IPS


$adrci

adrci>help ips

adrci>show incident

展示第9817,事件是关于ora-600[XYZ]

adrci>ips create package incident 9817

adrci>ips add incident 9817 package 4

adrci>ips add file

adrci>ips generate package 4 in /tmp



12.不可视索引

create index my_index on my_table(ename) invisible;

创建不可视索引

alter session set optimizer_use_invisible_indexes = true;

在单独的会话中修改为可见


13.分区新特性

1.区间分区

此前如果没有一个特定分区的值范围能匹配将要插入的值,oracle就会报错。新特性扩展了分区的功能,可以使用区间来定义同等大小的分区(包括未来分区)。当使用分区时,oracle会在需要的时候自动创建新的分区。新的分区在这个分区的第一条记录插入时被创建出来.

2.REF分区 

如果并行在父表上创建分区索引,就不能创建包含REF分区的子表,会报错。

为了绕过这个问题可以再创建REF分区的子表后 ,再于父表上创建分区索引。

3.系统分区

必须为数据指定一个分区,而更新或删除时不需要指明具体的分区。系统分区没有分区边界的概念,所以当执行一条语句时,除非显式指定了分区,否则oracle不得不扫描所有分区以查看操作的数据位于哪个分区.

4.虚拟列分区

虚拟列就看起来像一个普通列,允许在分区键上使用一个或多个物理列的表达式。例如如果表中有一列MONTHLY_SALARY,可以添加一个虚拟列,使该列乘以12(代表年薪)。虚拟列实际不存储数据(虽然在虚拟列上创建物理索引,但是它实际是一个基于函数的索引),此外,虚拟列分区支持所有的分区策略,可以使用范围,列表和哈希方式进行分区。

5.分区顾问


14.只读表


15.RAC one Node 和 RAC Patching

RAC one Node表示oracle rac 数据库只运行在一个活动的oracle实例上,并且如同oracle rac数据库一样,可以使用服务器控制工具来管理。


16.真正应用测试 RAT

数据库重放


17.SQL性能分析器 SPA

18.结果集缓存

sysdba登陆数据库时,不能使用结果集缓存


19.RMAN的新特性

活动数据库复制

20.安全文件

oracle安全文件也称为快速文件,是oracle对大对象LOB类型存储的改善.





      本文转自潘阔 51CTO博客,原文链接:http://blog.51cto.com/pankuo/1631325,如需转载请自行联系原作者



版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享: