浦发银行大数据库表备份设计思路(数据泵)

本文介绍了一种针对Oracle数据库中大数据量业务表的有效导出方法。通过分两步进行导出,先排除数据量大的表,再单独导出这些大表,避免了因数据量过大导致的问题。同时提供了SQL命令来检查表空间使用情况,并指导如何创建导出文件夹及赋予用户相应权限。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

经常会遇到数据量很大的业务表导入导出时把数据库导挂的情况,利用oracle特性可以有效解决。
  1. 备份须知:检测表空间大小,预估导出文件大小,注意修改用户、导出文件路径等,考虑到数据量较大,建议分两步导出;
  2. 检查生产用户【XXX】表空间大小及所剩空间大小,避免备份时磁盘空间不足,下一步建立导出文件夹【expdb_oradata】要大于导出文件的大小。
    <span style="font-size:18px;">select a.tablespace_name,
           a.bytes / 1024 / 1024 "Sum MB",
           (a.bytes - b.bytes) / 1024 / 1024 "used MB",
           b.bytes / 1024 / 1024 "free MB",
           round(((a.bytes - b.bytes) / a.bytes) * 100, 2) "percent_used"
      from (select tablespace_name, sum(bytes) bytes
              from dba_data_files
             group by tablespace_name) a,
           (select tablespace_name, sum(bytes) bytes, max(bytes) largest
              from dba_free_space
             group by tablespace_name) b ,dba_users
     where a.tablespace_name = b.tablespace_name and dba_users.USERNAME='XXX' and dba_users.default_tablespace=a.tablespace_name;</span>

  3. 建立导出文件夹【expdb_oradata】注意修改文件路径
    <span style="font-size:18px;">create directory dump_dir as '/home/oracle/expdb_oradata'; </span>
    给用户赋目录操作权限
    <span style="font-size:18px;">grant read, write on directory dump_dir to XXX;</span>

  4. 使用数据泵导出数据库  注: XXX 用户名 ,MMM 密码 , NNN 数据库实例;
     这里分两笔导出,第一笔数据量较小(采用排除业务数据较大的表),第二笔较大 注意修改命令文件名  
  5. 第一笔 排除大数据量的表 
    <span style="font-size:18px;">expdp XXX/MMM@NNN DIRECTORY=dump_dir DUMPFILE=PEPP_BFS_SPDB_20160701_A.dmp LOGFILE=exp_tab_test.log exclude=table:"in('COM_MESSAGE_IN','COM_MESSAGE_OUT','BFS_TRX_TRANSACTION','BFS_IPP_TRX_LOG','BFS_BILL_STATEMENT','BFS_BANK_VOUCHER','BFS_BANK_VOUCHER_DTL')";</span>

  6. 第二笔  导出大数据量的表
     
    <span style="font-size:18px;">expdp XXX/MMM@NNN DIRECTORY=dump_dir DUMPFILE=PEPP_BFS_SPDB_20160701_B.dmp LOGFILE=exp_tab_test.log TABLES=COM_MESSAGE_IN,COM_MESSAGE_OUT,BFS_TRX_TRANSACTION,BFS_IPP_TRX_LOG,BFS_BILL_STATEMENT,BFS_BANK_VOUCHER,BFS_BANK_VOUCHER_DTL;</span>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值