使用expdp导出时评估所需存储容量大小

我们在使用expdp进行数据导出时,可以事先评估需要存储大小容量(bytes),Oracle可以通过两种方式进行容量估算:


1)、通过数据块数量
2)、通过统计信息中记录的内容估算

具体是通过制定参数estimate_only和estimate来评估导出的性能
参数estimate_only=y|n 指定是否仅作评估不会导出数据
参数estimate=statistics|blocks参数来测试两者的差异。
设置为estimate=bloks,Oracle会按照目标对象所占用的数据块个数乘以数据块尺寸估算对象占用的空间,
设置为estimate=statistics,Oracle根据最近统计值估算对象占用空间
限制:当数据库包含压缩表时,estimate=blocks得出的结果会不准确,此时建议使用estimate=statistics

示例如下:
C:UsersAdministrator>expdp system/oracle schemas=scott estimate_only=y estimate=statistics

Export: Release 11.2.0.1.0 - Production on 星期三 11月 21 09:54:11 2012
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.

连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
启动 "SYSTEM"."SYS_EXPORT_SCHEMA_01": system/******** schemas=scott estimate_on
ly=y estimate=statistics
正在使用 STATISTICS 方法进行估计...
处理对象类型 SCHEMA_EXPORT/TABLE/TABLE_DATA
. 预计为 "SCOTT"."EMP" 7.683 KB
. 预计为 "SCOTT"."DEPT" 5.808 KB
. 预计为 "SCOTT"."SALGRADE" 5.808 KB
. 预计为 "SCOTT"."BONUS" 0 KB
使用 STATISTICS 方法的总估计: 19.30 KB
作业 "SYSTEM"."SYS_EXPORT_SCHEMA_01" 已于 09:54:36 成功完成

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可以通过使用 Oracle 数据库的 expdp 工具来导出数据库中的存储过程。下面是一个示例命令: ``` expdp username/password@database_name directory=directory_name dumpfile=dumpfile_name.dmp content=PROCEDURE_ONLY include=PROCEDURE ``` 其中,`username` 和 `password` 是数据库的用户名和密码,`database_name` 是数据库实例名,`directory_name` 是导出文件的目录名,`dumpfile_name.dmp` 是导出文件的名称,`content=PROCEDURE_ONLY` 示只导出存储过程的定义,而不导出数据,`include=PROCEDURE` 示只导出存储过程,而不导出其他对象。 ### 回答2: expdp是Oracle数据库的一个工具,用于将数据和对象导出到一个二进制文件中。在导出存储过程使用expdp命令指定正确的参数。 首先,我们要指定导出的用户名和密码,使用参数`userid=username/password`。 然后,使用参数`schemas=schema_name`指定要导出存储过程的模式。 接下来,使用参数`content=metadata_only`指定只导出元数据信息,以保证导出的文件只包含存储过程的定义而不包含实际数据。 最后,使用参数`dumpfile=dumpfile_name`指定导出文件的名称和路径。 整个导出命令的示例如下: ``` expdp userid=username/password schemas=schema_name content=metadata_only dumpfile=dumpfile_name ``` 执行这个命令后,Oracle数据库会将指定用户下的存储过程的元数据信息导出到指定的二进制文件中。导出的文件可以在要的使用impdp命令进行导入。 要注意的是,执行expdp命令要具有导出权限的用户,并且要提前创建导出文件的存储路径。另外,导出存储过程的用户和导入的用户应保持一致,以确保存储过程能够正确导入到目标数据库中。 ### 回答3: expdp是Oracle数据库中用于导出数据和数据库对象的工具。它可以将数据和对象以二进制格式导出到一个或多个文件中。但是,expdp在默认情况下不会导出存储过程。 要导出存储过程,可以使用expdp的“INCLUDE”参数和“EXCLUDE”参数来指定要导出的对象类型。例如,我们可以使用以下命令导出存储过程: expdp username/password@connect_string DIRECTORY=directory_name DUMPFILE=dumpfile_name INCLUDE=PROCEDURE 其中,username是要导出的数据库用户的用户名,password是该用户的密码,connect_string是连接数据库的连接字符串,directory_name是导出文件的目录,dumpfile_name是导出文件的名称。INCLUDE=PROCEDURE示只导出存储过程。 执行以上命令后,expdp会连接到数据库,并将所有满足条件的存储过程导出到指定的文件中。 要注意的是,导出存储过程要有足够的权限。如果用户没有足够的权限导出存储过程,可以联系数据库管理员授予相关权限。 导出存储过程后,可以使用impdp命令将存储过程导入到另一个数据库中。impdp是expdp的逆过程。 总之,要使用expdp导出存储过程,使用INCLUDE参数指定导出的对象类型为PROCEDURE,并确保有足够的权限来导出存储过程。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值