网站首页 > 技术文章 正文
近期很多同学咨询我,我们每天需要通过expdp逻辑备份一些核心表。expdp备份的速度很慢,从数据库层面有没有一些优化的方法。下面我来仔细梳理一下如何加快expdp的导出速度。
1、expdp导出过程中使用的是数据库SGA的streams pool。因此要加快expdp的导出速度,在数据库层面首先要关闭streams pool的自动内存管理。 streams_pool_size默认值只有256M。内存资源充足,并且备份频繁的生产库,推荐设置成5G。一般设置成1-2G也可以。设置方法如下:
alter system set streams_pool_size=2G scope=both sid='*';
该参数可以动态调整立即生效。
2、导出加并行
导出的时候可以设置expdp并行度parallel=4,需要同时配合设置dumpfile=expdp_%U.dmp设置文件导出文件的序列。
dumpfile=expdp_%U.dmp ---%U默认从 01 生成到 99 ,
compression=all
parallel=4
3、导出的时候排除统计信息和索引。
exclude=statistics,indexes
4、导出避免CLOB字段。
如果导出的对象里面包含有CLOB字段,则CLOB字段的导出会非常慢,同时CLOB字段导出的是没法压缩的,非常占用空间。
综上所述,给大家一个完整expdp导出配置文件案例案例:
3.1 创建directory和赋予权限:
create directory dmpdir as '/home/oracle/dump';
grant read,write on directory dmpdir to scott;
3.2 到/home/oracle/dump目录编辑expdp的parfile
vi expdp.par
userid='scott/tigger' ---配置导出目标用户和密码
dumpfile=expdp_%U.dmp ---配置导出的文件
compression=all ---启用压缩
parallel=4 ---开启4个并行
cluster=N ---RAC环境只在当前节点导出
directory=dmpdir ---配置数据库的directory
exclude=statistics,indexes ---导出排除统计信息和索引
logfile=expdp.log ---导出过程的日志记录
3.3 执行导出
nohup expdp parfile=expdp.par &
猜你喜欢
- 2024-11-16 北大青鸟深圳嘉华与你一起探讨Oracle数据库安全问题(下)
- 2024-11-16 使用python如何将查询结果,转换为insert脚本?
- 2024-11-16 如何简化应用性能监控?(应用性能分析监控工具)
- 2024-11-16 学习笔记-ORACLE-WITH AS(oracle with as insert)
你 发表评论:
欢迎- 607℃几个Oracle空值处理函数 oracle处理null值的函数
- 599℃Oracle分析函数之Lag和Lead()使用
- 587℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 583℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 579℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 572℃【数据统计分析】详解Oracle分组函数之CUBE
- 559℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 552℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- 前端获取当前时间 (50)
- Oracle RAC (76)
- oracle恢复 (77)
- oracle 删除表 (52)
- oracle 用户名 (80)
- oracle 工具 (55)
- oracle 内存 (55)
- oracle 导出表 (62)
- oracle约束 (54)
- oracle 中文 (51)
- oracle链接 (54)
- oracle的函数 (58)
- 前端调试 (52)
本文暂时没有评论,来添加一个吧(●'◡'●)