快上网专注成都网站设计 成都网站制作 成都网站建设
成都网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

怎么高速下载oracle 怎么高速下载onedrive文件

怎样在Oracle数据库中高速导出/导入

迄今为止,导出/导入工具集仍是跨多个平台转移数据所需劳动强度最小的首选实用工具,尽管人们常常抱怨它速度太慢。导入只是将每条记录从导出转储文件中读出来,然后使用常见的 INSERT INTO 命令将其插入到目标表中,因此导入可能是个很慢的过程,这一点并不让人感到吃惊。

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:申请域名、网页空间、营销软件、网站建设、建安网站维护、网站推广。

进入 Oracle Data Pump,Oracle Database 10g 中的导出/导入工具包的更新更快的同类工具,它被设计来成倍地加速这个过程。

Data Pump 反映了整个导出/导入过程的彻底革新。它不是使用常见的 SQL 命令,而是应用专用 API 来以更快得多的速度加载和卸载数据。在我的测试中,我看到导出性能比在直接模式下提高了 10-15 倍,导入过程性能提高了 5 倍。此外,与使用导出实用工具不同,它还能够只取出特定类型的对象(如过程)。

Data Pump 导出

这个新的实用工具称为 expdp,以和原来的导出 exp 区分开。在本例中,我们将用 Data Pump 来导出一个大表 CASES,大小约为 3GB。Data Pump 在服务器端使用文件处理来创建和读取文件;因此,目录作为位置使用。在这种情况下,我们将使用文件系统 /u02/dpdata1 来保存转储文件。

create directory dpdata1 as /u02/dpdata1;

grant read, write on directory dpdata1 to ananda;

接下来,我们将导出数据:

expdp ananda/abc123 tables=CASES directory=DPDATA1

dumpfile=expCASES.dmp job_name=CASES_EXPORT

让我们来分析该命令的各个部分。用户 ID/口令组合、表和转储文件参数的意义是显而易见的。与原来的导出不同,文件是在服务器(不是客户端)上创建的。位置由目录参数值 DPDATA1 指定,它指向之前创建的 /u02/dpdata1。这个进程还在目录参数指定的位置上创建一个日志文件(同样在服务器上)。默认地,这个进程使用一个名称为 DPUMP_DIR 的目录;因此可以创建它来代替 DPDATA1。

注意上面的参数 job_name,这是个特殊的参数,在原来的导出中没有。所有的 Data Pump 工作都通过作业来完成。Data Pump 作业 — 与 DBMS 作业不同 — 只是服务器进程,它代表主进程处理数据。主进程(称为主控制进程)通过高级队列 (AQ) 来协调这项工作;它通过在运行期内创建的一个特殊的表(称为主表)来实现这个目的。在我们的例子中,如果您在 expdp 运行时检查用户 ANANDA 的模式 ,您将注意到一个表 CASES_EXPORT 的存在(对应参数 job_name)。当 expdp 结束时,这个表被丢弃。

导出监控

当 Data Pump Export (DPE) 运行时,按 Control-C;它将阻止消息在屏幕上显示,但不停止导出进程本身。相反,它将显示 DPE 提示符(如下所示)。进程现在被认为处于“交互式”模式:

Export

这种方法允许在这个 DPE 作业上输入几条命令。要查看概要,在提示符下使用 STATUS 命令:

Export status

Job:CASES_EXPORT

Operation:EXPORT

Mode:TABLE

State:EXECUTING

Degree: 1

Job Error Count: 0

Dump file:/u02/dpdata1/expCASES.dmp

bytes written = 2048

Worker 1 Status:

State:EXECUTING

Object Schema:DWOWNER

Object Name:CASES

Object Type:TABLE_EXPORT/TBL_TABLE_DATA/TABLE/TABLE_DATA

Completed Objects: 1

Total Objects: 1

Completed Rows: 4687818

记住,这只是状态显示。导出在后台工作。要继续在屏幕上查看消息,从 Export 提示符下使用命令 CONTINUE_CLIENT。

并行操作

您可以通过 PARALLEL 参数为导出使用一个以上的线程来显着地加速作业。每个线程创建一个单独的转储文件,因此参数 dumpfile 应当拥有和并行度一样多的项目。您可以指定通配符作为文件名,而不是显式地输入各个文件名,例如:

expdp ananda/abc123 tables=CASES directory=DPDATA1

dumpfile=expCASES_%U.dmp parallel=4 job_name=Cases_Export

注意 dumpfile 参数拥有一个通配符 %U,它指示文件将按需要创建,格式将为 expCASES_nn.dmp,其中 nn 从 01 开始,然后按需要向上增加。

在并行模式下,状态屏幕将显示四个工作进程。(在默认模式下,只有一个进程是可见的。)所有的工作进程同步取出数据,并在状态屏幕上显示它们的进度。

分离访问数据文件和转储目录文件系统的输入/输出通道是很重要的。否则,与维护 Data Pump 作业相关的开销可能超过并行线程的效益,并因此而降低性能。并行方式只有在表的数量多于并行值并且表很大时才是有效的。

数据库监控

您还可以从数据库视图获得关于运行的 Data Pump 作业的更多信息。监控作业的主视图是 DBA_DATAPUMP_JOBS,它将告诉您在作业上有多少个工作进程(列 DEGREE)在工作。另一个重要的视图是 DBA_DATAPUMP_SESSIONS,当它与上述视图和 V$SESSION 结合时将给出主前台进程的会话 SID。

select sid, serial#

from v$session s, dba_datapump_sessions d

where s.saddr = d.saddr;

这条指令显示前台进程的会话。更多有用的信息可以从警报日志中获得。当进程启动时,MCP 和工作进程在警报日志中显示如下:

kupprdp:master process DM00 started with pid=23,

OS id=20530 to execute -

SYS.KUPM$MCP.MAIN(CASES_EXPORT, ANANDA);

kupprdp:worker process DW01 started with worker

id=1, pid=24, OS id=20532 to execute -

SYS.KUPW$WORKER.MAIN(CASES_EXPORT, ANANDA);

kupprdp:worker process DW03 started with worker

id=2, pid=25, OS id=20534 to execute -

SYS.KUPW$WORKER.MAIN(CASES_EXPORT, ANANDA);

它显示为数据泵操作启动的会话的 PID。您可以用以下查询找到实际的 SID:

select sid, program from v$session where paddr in

(select addr from v$process where pid in (23,24,25));

PROGRAM 列将对应警报日志文件中的名称显示进程 DM (为主进程)或 DW (为工作进程)。如果一个工作进程使用了并行查询,比如说 SID 23,您可以在视图 V$PX_SESSION 中看到它,并把它找出来。它将为您显示从 SID 23 代表的工作进程中运行的所有并行查询会话:

select sid from v$px_session where qcsid = 23;

从视图 V$SESSION_LONGOPS 中可以获得其它的有用信息来预测完成作业将花费的时间。

select sid, serial#, sofar, totalwork

from v$session_longops

where opname = CASES_EXPORT

and sofar != totalwork;

列 totalwork 显示总工作量,该列的 sofar 数量被加和到当前的时刻 — 因而您可以用它来估计还要花多长时间。

Data Pump 导入

不过,数据导入性能是 Data Pump 真正出色的地方。要导入先前导出的数据,我们将使用

impdp ananda/abc123 directory=dpdata1

dumpfile=expCASES.dmp job_name=cases_import

导入进程的默认行为是创建表和所有相关的对象,然后在表已存在时产生一个错误。如果您想把数据添加到一个现有的表中,您可以在上述命令行中使用 TABLE_EXISTS_ACTION=APPEND。

和使用 Data Pump 导入一样,在进程中按 Control-C 将进入 Date Pump Import (DPI) 的交互模式;同样,提示符是 Import。

处理特定对象

您是否有过只需要从一个用户导出特定的过程,以在一个不同的数据库或用户中重新创建这些过程的情况?与传统的导出实用工具不同,Data Pump 允许您只导出特定类型的对象。例如,以下命令让您只导出过程,而不导出其它任何东西 — 不导出表、视图、甚至函数:

expdp ananda/iclaim directory=DPDATA1

dumpfile=expprocs.dmp include=PROCEDURE

要只导出一些特定的对象 — 比如说,函数 FUNC1 和过程 PROC1 — 您可以使用

expdp ananda/iclaim directory=DPDATA1 dumpfile=expprocs.dmp

include=PROCEDURE:"=PROC1\",FUNCTION:"=FUNC1\"

这个转储文件充当了源对象的一个备份。您甚至可以用它来创建 DDL 脚本,以供之后使用。一个称为 SQLFILE 的特殊参数允许创建 DDL 脚本文件。

impdp ananda/iclaim directory=DPDATA1

dumpfile=expprocs.dmp sqlfile=procs.sql

该指令在 DPDATA1 指定的目录中创建一个名称为 procs.sql 的文件,并将对象的脚本包含在导出转储文件中。这种方法帮助您快速地在另一个模式中创建源对象。

利用参数 INCLUDE 允许您从转储文件中定义要包含或排除的对象。您可以使用子句 INCLUDE=TABLE:"LIKE TAB%" 来仅导出那些名称以 TAB 开头的表。类似地,您可以使用结构 INCLUDE=TABLE:"NOT LIKE

怎样从网上下载oracle 10g

由于目前官网只提供oracle11g和oracle12c的方法,所以oracle10g版本只能通过网盘或其他方式获取,在官网目前没有直接下载的方式,如果要下载oracle11g和oracle12c可通过如下方法:

1、进入oracle官网:

2、在页面上方找到downloads按钮,如图:

3、在列表中选择自己需要的版本,点击“see all”按钮;

4、如要下载,选择类似图中红框部分,确认下载即可。

如何下载oracle11g

1、打开搜索,输入“oracle”,在结果中,找到 【oracle官方网站】点击进入。

2、进入“oracle官网”,点击上方菜单栏【downloads】(下载),在下拉菜单中找到【Database】(数据库),然后点击下方【oracle Database】(oracle 数据库)。

3、进入oracle 数据库下载节目,勾选 Accept License Agreement(同意oracle协议)。

4、勾选协议完成,鼠标往下拉找到【Oracle Database 11g Release 2】界面,"在下方选择需要安装oracle的操作系统类型",选择玩吧点击后发的【select All】。

5、进入下载节目,勾选 Accept License Agreement  然后在下方分别下载【win32_11gR2_database_2of1.zip 】【win32_11gR2_database_2of2.zip 】。

6、此时要求我们“登录oracle账户”,如果我们有oracle账户,直接输入账户密码进行登录即可,

没有oracle账户的话,点击右方【创建账户】。

7、进入注册账户界面,按照注册要求,填写相关信息,填写完毕,点击下方【创建】(密码必须是大写字母+小写字母+数字)。

8、创建账户成功,此时会提示我们要求我们进入注册邮箱进行账户验证。

9、此时返回登录界面,输入我们oracle账户密码,进行登录。

10、此时返回下载节目,就可以点击【oracle下载文件】进行下载了,建议在本地路径下,新建一个oracle文件夹,将两个文件“保存到同一目录下即可。

教你怎样在Oracle数据库中高速导出/导入

迄今为止 导出/导入工具集仍是跨多个平台转移数据所需劳动强度最小的首选实用工具 尽管人们常常抱怨它速度太慢 导入只是将每条记录从导出转储文件中读出来 然后使用常见的 INSERT INTO 命令将其插入到目标表中 因此导入可能是个很慢的过程 这一点并不让人感到吃惊

进入 Oracle Data Pump Oracle Database g 中的导出/导入工具包的更新更快的同类工具 它被设计来成倍地加速这个过程

Data Pump 反映了整个导出/导入过程的彻底革新 它不是使用常见的 SQL 命令 而是应用专用 API 来以更快得多的速度加载和卸载数据 在我的测试中 我看到导出性能比在直接模式下提高了 倍 导入过程性能提高了 倍 此外 与使用导出实用工具不同 它还能够只取出特定类型的对象(如过程)

Data Pump 导出

这个新的实用工具称为 expdp 以和原来的导出 exp 区分开 在本例中 我们将用 Data Pump 来导出一个大表 CASES 大小约为 GB Data Pump 在服务器端使用文件处理来创建和读取文件 因此 目录作为位置使用 在这种情况下 我们将使用文件系统 /u /dpdata 来保存转储文件

create directory dpdata as /u /dpdata ; grant read write on directory dpdata to ananda;  

 

接下来 我们将导出数据

expdp ananda/abc tables=CASES directory=DPDATA dumpfile=expCASES dmp job_name=CASES_EXPORT  

让我们来分析该命令的各个部分 用户 ID/口令组合 表和转储文件参数的意义是显而易见的 与原来的导出不同 文件是在服务器(不是客户端)上创建的 位置由目录参数值 DPDATA 指定 它指向之前创建的 /u /dpdata 这个进程还在目录参数指定的位置上创建一个日志文件(同样在服务器上) 默认地 这个进程使用一个名称为 DPUMP_DIR 的目录 因此可以创建它来代替 DPDATA

注意上面的参数 job_name 这是个特殊的参数 在原来的导出中没有 所有的 Data Pump 工作都通过作业来完成 Data Pump 作业 — 与 DBMS 作业不同 — 只是服务器进程 它代表主进程处理数据 主进程(称为主控制进程)通过高级队列 (AQ) 来协调这项工作 它通过在运行期内创建的一个特殊的表(称为主表)来实现这个目的 在我们的例子中 如果您在 expdp 运行时检查用户 ANANDA 的模式 您将注意到一个表 CASES_EXPORT 的存在(对应参数 job_name) 当 expdp 结束时 这个表被丢弃

导出监控

当 Data Pump Export (DPE) 运行时 按 Control C 它将阻止消息在屏幕上显示 但不停止导出进程本身 相反 它将显示 DPE 提示符(如下所示) 进程现在被认为处于 交互式 模式

Export

这种方法允许在这个 DPE 作业上输入几条命令 要查看概要 在提示符下使用 STATUS 命令

Export status Job:CASES_EXPORT Operation:EXPORT Mode:TABLE  State:EXECUTING  Degree: Job Error Count: Dump file:/u /dpdata /expCASES dmp bytes written =  Worker Status: State EXECUTING  Object Schema:DWOWNER Object Name:CASES Object Type:TABLE_EXPORT/TBL_TABLE_DATA/TABLE/TABLE_DATA Completed Objects: Total Objects: Completed Rows:  

记住 这只是状态显示 导出在后台工作 要继续在屏幕上查看消息 从 Export 提示符下使用命令 CONTINUE_CLIENT

并行操作

您可以通过 PARALLEL 参数为导出使用一个以上的线程来显著地加速作业 每个线程创建一个单独的转储文件 因此参数 dumpfile 应当拥有和并行度一样多的项目 您可以指定通配符作为文件名 而不是显式地输入各个文件名 例如

expdp ananda/abc tables=CASES directory=DPDATA dumpfile=expCASES_%U dmp parallel= job_name=Cases_Export  

注意 dumpfile 参数拥有一个通配符 %U 它指示文件将按需要创建 格式将为 expCASES_nn dmp 其中 nn 从 开始 然后按需要向上增加

在并行模式下 状态屏幕将显示四个工作进程 (在默认模式下 只有一个进程是可见的 )所有的工作进程同步取出数据 并在状态屏幕上显示它们的进度

分离访问数据文件和转储目录文件系统的输入/输出通道是很重要的 否则 与维护 Data Pump 作业相关的开销可能超过并行线程的效益 并因此而降低性能 并行方式只有在表的数量多于并行值并且表很大时才是有效的

数据库监控

您还可以从数据库视图获得关于运行的 Data Pump 作业的更多信息 监控作业的主视图是 DBA_DATAPUMP_JOBS 它将告诉您在作业上有多少个工作进程(列 DEGREE)在工作 另一个重要的视图是 DBA_DATAPUMP_SESSIONS 当它与上述视图和 V$SESSION 结合时将给出主前台进程的会话 SID

select sid serial# from v$session s dba_datapump_sessions d where s saddr = d saddr;  

这条指令显示前台进程的会话 更多有用的信息可以从警报日志中获得 当进程启动时 MCP 和工作进程在警报日志中显示如下

kupprdp:master process DM started with pid= OS id= to execute SYS KUPM$MCP MAIN( CASES_EXPORT ANANDA ); kupprdp:worker process DW started with worker id= pid= OS id= to execute SYS KUPW$WORKER MAIN( CASES_EXPORT ANANDA ); kupprdp:worker process DW started with worker id= pid= OS id= to execute SYS KUPW$WORKER MAIN( CASES_EXPORT ANANDA );  

它显示为数据泵操作启动的会话的 PID 您可以用以下查询找到实际的 SID

select sid program from v$session where paddr in (select addr from v$process where pid in ( ));  

PROGRAM 列将对应警报日志文件中的名称显示进程 DM (为主进程)或 DW (为工作进程) 如果一个工作进程使用了并行查询 比如说 SID 您可以在视图 V$PX_SESSION 中看到它 并把它找出来 它将为您显示从 SID 代表的工作进程中运行的所有并行查询会话

select sid from v$px_session where qcsid = ;  

从视图 V$SESSION_LONGOPS 中可以获得其它的有用信息来预测完成作业将花费的时间

select sid serial# sofar totalwork from v$session_longops where opname = CASES_EXPORT and sofar != totalwork;  

列 totalwork 显示总工作量 该列的 sofar 数量被加和到当前的时刻 — 因而您可以用它来估计还要花多长时间

Data Pump 导入

不过 数据导入性能是 Data Pump 真正出色的地方 要导入先前导出的数据 我们将使用

impdp ananda/abc directory=dpdata dumpfile=expCASES dmp job_name=cases_import  

导入进程的默认行为是创建表和所有相关的对象 然后在表已存在时产生一个错误 如果您想把数据添加到一个现有的表中 您可以在上述命令行中使用 TABLE_EXISTS_ACTION=APPEND

和使用 Data Pump 导入一样 在进程中按 Control C 将进入 Date Pump Import (DPI) 的交互模式 同样 提示符是 Import

处理特定对象

您是否有过只需要从一个用户导出特定的过程 以在一个不同的数据库或用户中重新创建这些过程的情况?与传统的导出实用工具不同 Data Pump 允许您只导出特定类型的对象 例如 以下命令让您只导出过程 而不导出其它任何东西 — 不导出表 视图 甚至函数

expdp ananda/iclaim directory=DPDATA dumpfile=expprocs dmp include=PROCEDURE  

要只导出一些特定的对象 — 比如说 函数 FUNC 和过程 PROC — 您可以使用

expdp ananda/iclaim directory=DPDATA dumpfile=expprocs dmp include=PROCEDURE:\ =\ PROC \ \ FUNCTION:\ =\ FUNC \ \

这个转储文件充当了源对象的一个备份 您甚至可以用它来创建 DDL 脚本 以供之后使用 一个称为 SQLFILE 的特殊参数允许创建 DDL 脚本文件

impdp ananda/iclaim directory=DPDATA dumpfile=expprocs dmp sqlfile=procs sql

该指令在 DPDATA 指定的目录中创建一个名称为 procs sql 的文件 并将对象的脚本包含在导出转储文件中 这种方法帮助您快速地在另一个模式中创建源对象

利用参数 INCLUDE 允许您从转储文件中定义要包含或排除的对象 您可以使用子句 INCLUDE=TABLE: LIKE TAB% 来仅导出那些名称以 TAB 开头的表 类似地 您可以使用结构 INCLUDE=TABLE: NOT LIKE TAB% 来排除所有名称以 TAB 开头的表 作为另一种选择 您可以使用 EXCLUDE 参数来排除特定的对象

lishixinzhi/Article/program/Oracle/201311/17547

如何安装oracle11g的安装包

包含64位/32位官方版本,并附详细的Oracle 11g安装图解教程,同时希望能帮助到刚接触到Oracle数据库的朋友。安装过程稍需一段时间,具体时间决取于你的电脑配置,请大家稍安勿躁。

Oracle 11g版本是甲骨文公司凭借自已30年的设计经验,成功打造的功能强大的关系数据库管理系统,目前共发行了linux版本和windows版本,Oracle数据库的高效性、安全性、稳定性、延展性,是其成功的关键因素,世界上的几乎所有大型信息化系统都在应用Oracle技术。

在甲骨文推出的产品中,Oracle 11g是最具创新性和质量最高的软件,它具有400多项功能,经过了1500万个小时的测试,开发工作量前所未有。Oracle数据库11g可以帮助企业管理企业信息、更深入地洞察业务状况并迅速自信地做出调整以适应不断变化的竞争环境,最新版数据库增强了Oracle数据库独特的数据库集群、数据中心自动化和工作量管理功能,更多详细的功能请大家查看下面的Oracle 11g新增功能介绍。

Oracle 11g 64位/32位官方版

Oracle 11g安装图解教程

安装以win7 64位系统为例

1、将win64_11gR2_database_1of2和win64_11gR2_database_2of2解压到同个文件夹下合并(可以直接左键框住右键点击一起解压),打开运行其中的setup开始安装,如图所示:

2、稍后进入Oracle 11g安装界面(如下图:)

3、【配置安全更新】邮箱以及口令可以不写,点击下一步,出现提醒,直接点是即可。

4、【安装选项】直接选择默认创建和配置一个数据库(安装完Oracle后,系统会自动创建一个数据库实例)。

5、【系统类】个人用户直接选择默认的桌面类就可以了,如图所示:

6、【典型安装】Oracle基目录,软件目录,和数据库文件目录,Oracle一般会自动帮你选择空间最大的盘和你解压文件的盘符,全部默认即可。管理口令需要输入(大写+小写+数字)的八位密码,也有网友指出此处可以随意设置简单好记的密码,无视软件提醒即可。

7、【先决条件检查】安装程序会检查软硬件系统是否满足此Oracle版本的最低要求,安装需要占用约2G的C盘空间,内存2G以上即可。如果还是通不过要求,选择全部忽略。

8、【概要】安装前的一些相关选择配置信息,点击完成。

9、安装正在进行中,请耐心等待。。。。如图所示:

10、Oracle实例创建启动完成后,会自动创建安装一个实例数据库名称orcl123,(小编用的是orcl123,默认为orcl名称的数据库)。

11、 安装完成,运行开始菜单Oracle - OraDb11g_home1Database Control - orcl123,以IE运行进入登录界面或打开ie直接输入即可 (此处如果出现证书错误的话,点击继续浏览此网站即可)。

12、登录界面,输入用户名"SYS",口令为之前注册设置的管理密码,将连接身份改为SYSDBA,点击登录,成功之后你就可以管理你的数据库实例了。

Oracle 11g新版功能

1.数据库管理部分

◆数据库重演(Database Replay)

这一特性可以捕捉整个数据的负载,并且传递到一个从备份或者standby数据库中创建的测试数据库上,然后重演负责以测试系统调优后的效果。

◆SQL重演(SQL Replay)

和前一特性类似。但是只是捕捉SQL负载部分,而不是全部负载。

◆计划管理(Plan Management)这一特性允许你将某一特定语句的查询计划固定下来,无论统计数据变化还是数据库版本变化都不会改变她的查询计划。

◆自动诊断知识库(Automatic Diagnostic Repository ADR)

当Oracle探测到重要错误时,会自动创纪一个事件(incident),并且捕捉到和这一事件相关的信息,同时自动进行数据库健康检查并通知DBA。此外,这些信息还可以打包发送给Oracle支持团队。

◆事件打包服务(Incident Packaging Service)

如果你需要进一步测试或者保留相关信息,这一特性可以将与某一事件相关的信息打包。并且你还可以将打包信息发给oracle支持团队。

◆基于特性打补丁(Feature Based Patching)

在打补丁包时,这一特性可以使你很容易区分出补丁包中的那些特性是你正在使用而必须打的。企业管理器(EM)使你能订阅一个基于特性的补丁服务,因此企业管理器可以自动扫描那些你正在使用的特性有补丁可以打。

◆自动SQL优化(Auto SQL Tuning)

10g的自动优化建议器可以将优化建议写在SQL profile中。而在11g中,你可以让oracle自动将能3倍于原有性能的profile应用到SQL语句上。性能比较由维护窗口中一个新管理任务来完成。

◆访问建议器(Access Advisor)

11g的访问建议器可以给出分区建议,包括对新的间隔分区(interval partitioning)的建议。间隔分区相当于范围分区(range partitioning)的自动化版本,她可以在必要时自动创建一个相同大小的分区。范围分区和间隔分区可以同时存在于一张表中,并且范围分区可以转换为间隔分区。

◆自动内存优化(Auto Memory Tuning)

在9i中,引入了自动PGA优化。10g中,又引入了自动SGA优化。到了11g,所有内存可以通过只设定一个参数来实现全表自动优化。你只要告诉oracle有多少内存可用,她就可以自动指定多少内存分配给PGA、多少内存分配给SGA和多少内存分配给操作系统进程。当然也可以设定最大、最小阈值。

◆资源管理器(Resource Manager)

11g的资源管理器不仅可以管理CPU,还可以管理IO。你可以设置特定文件的优先级、文件类型和ASM磁盘组。

◆ADDMADDM在10g被引入。

11g中,ADDM不仅可以给单个实例建议,还可以对整个RAC(即数据库级别)给出建议。另外,还可以将一些指示(directive)加入ADDM,使之忽略一些你不关心的信息。

◆AWR 基线(AWR Baselines)

AWR基线得到了扩展。可以为一些其他使用到的特性自动创建基线。默认会创建周基线。

2.PLSQL部分

◆结果集缓存(Result Set Caching)

这一特性能大大提高很多程序的性能。在一些MIS系统或者OLAP系统中,需要使用到很多"select count(*)"这样的查询。在之前,我们如果要提高这样的查询的性能,可能需要使用物化视图或者查询重写的技术。在11g,我们就只需要加一个/*+result_cache*/的提示就可以将结果集缓存住,这样就能大大提高查询性能。当然,在这种情况下,我们可能还要关心另外一个问题:完整性。因为在oracle中是通过一致性读来保证数据的完整性的。而显然,在这种新特性下,为提高性能,是从缓存中的结果集中读取数据,而不会从回滚段中读取数据的。关于这个问题,答案是完全能保证完整性。因为结果集是被独立缓存的,在查询期间,任何其他DML语句都不会影响结果集中的内容,因而可以保证数据的完整性。

◆对象依赖性改进

在11g之前,如果有函数或者视图依赖于某张表,一旦这张表发生结构变化,无论是否涉及到函数或视图所依赖的属性,都会使函数或视图变为invalid。在11g中,对这种情况进行了调整:如果表改变的属性与相关的函数或视图无关,则相关对象状态不会发生变化。

◆正则表达式的改进

在10g中,引入了正则表达式。这一特性大大方便了开发人员。11g,oracle再次对这一特性进行了改进。其中,增加了一个名为regexp_count的函数。另外,其他的正则表达式函数也得到了改进。

◆新SQL语法 =

我们在调用某一函数时,可以通过=来为特定的函数参数指定数据。而在11g中,这一语法也同样可以出现在sql语句中了。例如,你可以写这样的语句:select f(x=6) from dual;

◆对TCP包(utl_tcp、utl_smtp…)

支持FGAC(Fine Grained Access Control)安全控制

◆增加了只读表(read-only table)

在以前,我们是通过触发器或者约束来实现对表的只读控制。11g中不需要这么麻烦了,可以直接指定表为只读表。

◆触发器执行效率提高了

内部单元内联(Intra-Unit inlining)在C语言中,你可以通过内联函数(inline)或者宏实现使某些小的、被频繁调用的函数内联,编译后,调用内联函数的部分会编译成内联函数的函数体,因而提高函数效率。在11g的plsql中,也同样可以实现这样的内联函数了。

◆设置触发器顺序

可能在一张表上存在多个触发器。在11g中,你可以指定它们的触发顺序,而不必担心顺序混乱导致数据混乱。

◆混合触发器(compound trigger)

这是11g中新出现的一种触发器。她可以让你在同一触发器中同时具有申明部分、before过程部分、after each row过程部分和after过程部分。

◆创建无效触发器(Disabled Trigger)

11g中,开发人员可以可以闲创建一个invalid触发器,需要时再编译她。

◆在非DML语句中使用序列(sequence)

在之前版本,如果要将sequence的值赋给变量,需要通过类似以下语句实现:select seq_x.next_val into v_x from dual;在11g中,不需要这么麻烦了,下面语句就可以实现:v_x := seq_x.next_val

◆PLSQL_Warning

11g中,可以通过设置PLSQL_Warning=enable all,如果在"when others"没有错误爆出就发警告信息。

◆PLSQL的可继承性

可以在oracle对象类型中通过super(和java中类似)关键字来实现继承性。

◆编译速度提高

因为不在使用外部C编译器了,因此编译速度提高了。

◆改进了DBMS_SQL包其中的改进之一就是DBMS_SQL可以接收大于32k的CLOB了。另外还能支持用户自定义类型和bulk操作。

◆新的PLSQL数据类型——simple_integer这是一个比pls_integer效率更高的整数数据类型。

3.其他部分

◆增强的压缩技术

可以最多压缩2/3的空间。

◆高速推进技术

可以大大提高对文件系统的数据读取速度。

◆增强了DATA Guard

可以创建standby数据库的快照,用于测试。结合数据库重演技术,可以实现模拟生成系统负载的压力测试。 ◆在线应用升级

也就是热补丁——安装升级或打补丁不需要重启数据库。

◆数据库修复建议器

可以在错误诊断和解决方案实施过程中指导DBA。

◆逻辑对象分区

可以对逻辑对象进行分区,并且可以自动创建分区以方便管理超大数据库(Very Large Databases VLDBs)。

◆新的高性能的LOB基础结构

◆新的PHP驱动


当前文章:怎么高速下载oracle 怎么高速下载onedrive文件
转载来于:http://6mz.cn/article/hgcjhe.html

其他资讯