创建dblink,使用expdp远程导出Oracle数据库
假设:
数据库地址 | 数据库用户名 | 口令 | |
远程 | 106.10.123.10:1521/orcl | AA | aa |
本机 | BB | bb |
通过 本地数据库用户BB 使用 远程数据库用户AA 创建dblink,再使用dblink导出远程数据库,具体操作如下:
一、在本机查询BB是否具有权限创建dblink
1. 若无本地用户请创建。
2. select * from user_sys_privs t where t.privilege like upper('%link%')
3. 若无权限,赋予权限:
grant create public database link to BB; 赋予用户BB创建数据库链接的权限
grant drop public database link to BB; 赋予用户BB删除数据库链接的权限
4. 创建directory
create or replace directory dmp as 'D:\dmp'
蓝色字体部分为你的目录的地址,示例为D盘下的dmp文件夹,需提前创建好该文件夹再在数据库中执行本条命令,
此目录在后面用作导出数据库文件的目录。
二、通过用户BB创建dblink名为Mydblink
1. 输入以下命令并执行,粉红色字体部分根据实际情况进行调整修改:
create database link Mydblink
connect to AA
identified by aa using
'(DESCRIPTION =(ADDRESS_LIST =(ADDRESS =(PROTOCOL = TCP)
(HOST = 106.10.123.10)(PORT = 1521)))
(CONNECT_DATA =(SERVICE_NAME = orcl)))';
2. 测试建立的Mydblink是否有用
三、导出数据库
win+R调出运行,输入cmd回车,在命令提示符中输入以下命令:
expdp BB/[email protected] directory=dmp dumpfile=dblinktest.dmp network_link=Mydblink
绿色字体部分为导出的dmp文件的文件名
运行以上命令可成功导出数据库文件