Oracle使用dblink导出源端服务器的数据

Oracle版本:11.2.0.4

操作系统:Windows server 2012 R2

目标端创建dblink

目标端登录dmp用户创建dblink:

create database link MHJ46
connect to sys identified by “password”
using ‘(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.46)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = db)))’;

目标端创建导出目录:
create directory mhj46 as ‘D:\DMP\MHJ46’;
grant read,write on directory mhj46 to dmp;

导出脚本

@echo off

set dumpname=DCMHJ_%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%
set dumpname=%dumpname: =%

expdp dmp/hmllllll network_link=MHJ46 schemas=utest dumpfile=%dumpname%.dmp logfile=%dumpname%.log directory=mhj46  compression=ALL

pause
forfiles /p "D:\DMP\MHJ46" /s /m  *.dmp /d -60 /c "cmd /c del @path"
forfiles /p "D:\DMP\MHJ46" /s /m  *.log /d -60 /c "cmd /c del @path"

脚本说明:
1、dmp是目标端的导出用户
2、utest是源端服务器需要备份的用户

问题描述:

导出的时候提示如下错误:
ORA-31631:需要特权
ORA-39161:完整数据库作业需要特权

问题原因:

源端服务器utest用户没有导出导入的权限

问题解决:

在源端服务器执行以下语句:
grant exp_full_database,imp_full_database to utest;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值